ویجت صفحه اصلی اندروید- قسمت سوم: ایجاد ویجت قابل تنظیم

ویجت صفحه اصلی اندروید- قسمت سوم: ایجاد ویجت قابل تنظیمReviewed by آریانا on Feb 25Rating: 5.0ایجاد ویجت قابل تنظیم در برنامه نویسی اندرویدویجت صفحه اصلی اندروید- قسمت سوم: ایجاد ویجت قابل تنظیم

در قسمت دوم راجع به نحوه ی ایجاد یک ویدجت با قابلیت به روزرسانی پرداختیم. امروز می خواهم در مورد یک نوع ویدجت صحبت کنم که قابلیت تنظیم در موقع ایجاد آن دارد. این یعنی وقتی شما ویدجت را روی صفحه اصلی درگ می کنید تا از آن استفاده کنید، یک اکتیویتی پیکربندی یا configuration Activity  راه اندازی می شود و شما می توانید برای ویدجت خود تنظیماتی را اعمال نمایید.

در این پروژه ی نمونه من به کاربران اجازه می دهم که یک لینک را انتخاب کنند و هر زمان که روی ان کلیک کردند، لینک در مرورگر باز خواهد شد.

نحوه ی ایجاد یک layout برای configuration Activity:

مهمترین کار برای ایجاد این نوع ویدجت، توسعه دادن configuration Activity می باشد. ابتدا یک layout ساده را ایجاد می کنیم که شامل یک Spinner باشد که به انتخاب کاربر اجازه می دهد تا یک  value از یک مجموعه برای یک تنظیم و همچنین یک value را از یک دکمه برای انجام این کار داشته باشد.

activity_config.xml

 

کدهای برنامه نویسی Activity:

حالا به این سورس کدها نگاه کنید:

ConfigActivity.java

 

در متد onCreate() ، اولین کاری که ما انجام می دهیم، تنظیم setResult(RESULT_CANCELED) می باشد. چرا؟

اندروید  configuration Activity که متعلق به ویدجت شماست را تحریک می کند و از آن انتظار نتیجه داده دارد. اگر کاربر آن را مطابق انتظار ما پیکربندی نکند، بهتر است بگوییم که او بدون وارد کردن داده تحت فشار به عقب رانده می شود. و ما به ایجاد چنین ویدجتی نیاز نداریم.

در Spinner ، ما داده ها را برای ایجاد دو گزینه برای انتخاب کاربران تنظیم می کنیم (به صفحه اصلی  DevExchanges  یا گوگکل بروید) ، پس از کلیک روی دکمه ، محتوای TextView روی ویدجت به روز رسانی می شود و مجموعه ای از تنظیمات را برای RemoteViews را بر اساس appWidgetIds انجام می دهیم.

ویرایش xml ویدجت:

آخرین کاری که ما انجام می دهیم، ویرایش xml ویدجت می باشد. با ویرایش ، سیستم عامل اندروید این سیستم را به عناون یک ویدجت با قابلیت configuration Activity می شناسد. بنابراین قبل از ایجاد ویدجت باید اکتیویتی زیر را ایجاد کنید:

res\xml\configurable_widget_info.xml

 

همان طور که مستحضرید، ما هنوز در مورد کلاس ویدجت صحبت نکرده ایم. ما نیاز نداریم که هیچ کدی را برای کلاس ویدجت اضافه کنیم زیرا همه ی اقدامات توسط ConfigActivity انجام شده است. اما به هر حال برای ایجاد آن:

ConfigurableWidget.java

 

و این فایل layout  مربوط به ویدجت ماست:

res\layout\widget_configurable.xml

 

اجرای اپلیکیشن:

قبل از اجرای اپلیکیشن مطمئن شوید که شما ConfigurableWidget  را به عنوان یک receiver  برای AndroidManifest.xml تان (مانند نمونه های قبلی) اضافه کرده باشید.

 

پس از نصب اپلیکیشن به تب ” WIDGETS” بروید:

هنگامی که شما ویدجت را برای استفاده روی صفحه اصلی درگ کنید، configuration activity راه اندازی می شود:

وقتی روی آن کلیک کنید:

اگر سایر گزینه های configuration activity را انتخاب کنید،  متن ویدجت متفاوت خواهد بود.

پاسخ دهید