حتما تاکنون در برنامه های مختلف دیده اید که با کلیک بر روی یک دکمه، گزینه های مختلفی برای به اشتراک گذاری متن (مثل ارسال با پیامک یا بلوتوث) نمایش داده می شود. در ادامه آموزش برنامه نویسی اندروید یک برنامه می سازیم که اکتیویتی اصلی آن دارای یک دکمه (Button) است که با کلیک روی آن، یک متن برای اشتراک گذاری آماده می شود. ابتدا یک پروژه با نام ShareText ایجاد کنید و داخل صفحه ی اصلی آن یک دکمه (Button) قرار دهید.
یک لایه از نوع LinearLayout با طول و عرض match_parent ایجاد کرده و برای اینکه عناصر داخل این لایه وسط قرار گیرند gravity آن را center می کنیم. سپس داخل این لایه یک Button با طول و عرض wrap_content ایجاد کرده و برای آن یک متن با سایز مشخص ایجاد می کنیم.
ابتدا یک Button تعریف کرده و آن را findViewById می کنیم، سپس برای آن setListener می نویسیم.
داخل تابع یک Intent از نوع SEND تعریف می کنیم (چون قرار است یک متن به اشتراک بگذاریم و ارسال کنیم) :
Intent intent = new Intent(Intent.ACTION_SEND);
حالا باید با استفاده از setType نوع اشتراک گذاری را مشخص کنیم. چون می خواهیم متن به اشتراک بگذاریم setType را روی text/plain قرار می دهیم:
intent.setType("text/plain");
با استفاده از putExtra متنی که می خواهیم به اشتراک بگذاریم را مشخص می کنیم:
intent.putExtra(Intent.EXTRA_TEXT , "آموزش اندروید در شرکت پدیده تجارت");
و در آخر می خواهیم به صفحه ای منتقل شویم که اسامی برنامه هایی که قابلیت اشتراک گذاری دارند را نمایش دهد و ما یکی از آن ها را برای اشتراک گذاری متن خود انتخاب کنیم.
برای اینکار ابتدا startActivity را نوشته و برای نمایش اسامی برنامه ها از createChooser استفاده می کنیم، همچنین یک عنوان مشخص می کنیم که این عنوان بالای اسامی برنامه ها نمایش داده میشود:
startActivity(Intent.createChooser(intent, "اشتراک گذاری از طریق"));
خروجی پروژه
با اجرای پروژه ابتدا با صفحه ی زیر روبرو میشوید:
سپس با کلیک بر روی دکمه، اسامی برنامه هایی که قابلیت اشتراک گذاری دارند با عنوان “اشتراک گذاری از طریق” نمایش داده می شود:
حالا باید برای اشتراک گذاری متن خود یکی از برنامه ها را انتخاب کنیم. بعنوان مثال با انتخاب برنامه ی Messaging به صفحه ی زیر منتقل می شویم:
همانطور که مشاهده می کنید متنی که مشخص کرده بودیم آماده ی اشتراک گذاری می باشد.