ساخت صفحه تنظیمات در اندروید

سلام دوستان؛

اغلب، صفحه تنظیمات را در بسیاری از برنامه های اندروید مشاهده می کنیم که از طریق آن می توانید تنظیمات برنامه را بر اساس انتخاب خود پیکربندی کنید. به عنوان مثال می خواهید صدای اعلان را تغییر دهید یا پیام های اطلاع رسانی را از تنظیمات برنامه خاموش کنید.

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

تظیمات عملکرد شامل تعدادی عناصر مانند EditeText، CheckBox و تعدادی عنصر بیشتر برای تنظیمات پیشرفته است. شما همچنین می توانید گزینه های پیشرفته مانند انتخاب آهنگ زنگ، گزینه های همگام سازی و غیره را اجرا کنید.

۱- صفحه تنظیمات با عنوان(سربرگ) اختصاصی

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

 

در زیر نمونه ای از تنظیمات برنامه یوتیوب با سرصفحه های اختصاصی را مشاهده می کنید.

Android Implementing Preferences Settings Screen
ساخت صفحه تنظیمات در اندروید

۱-۱ اضافه کردن صفحه تنظیمات با استفاده از قالب های اندروید استودیو

برای ساخت صفحه تنظیمات در اندروید میتوان از قالب های اندروید استودیو همراه با کد های آماده استفاده کرد.

در اندروید استودیو به مسیر File ⇒ Activity ⇒ Settings Activity بروید و صفحه تنظیمات ایجاد کنید. فایل xml صفحه تنظیمات در مسیر res ⇒ xml قرار دارد.

Android Implementing Preferences Settings Screen
ساخت صفحه تنظیمات در اندروید

 

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

Android Implementing Preferences Settings Screen
ساخت صفحه تنظیمات در اندروید

 

مشکل:

استفاده از قالب آماده همیشه اطمینان نمی دهد که نیازهای شما را رفع کند. با نسخه فعلی اندروید استودیو من (V2.3.3) تمام عنوان ها به صورت پیش فرض درست شده اند که در برنامه من احتیاج نیست. بهترین راه برای ساخت صفحه تنظیمات در اندروید این است که همه چیز به صورت دستی تولید شود تا کنترل بیشتری بر خروجی تولیدی داشته باشیم.

 

پس شروع میکنیم با ساخت پروژه در اندروید استودیو و ساخت صفحه تنظیمات به صورت دستی.

 

۲- صفحه تنظیمات به صورت دستی

۱.ابتدا در android studio یک پروژه جدید ایجاد کنید.

۲. قسمت strings.xml را باز کنید و کدهای زیر را در آن قرار دهید.

۳. در مسیر res ⇒ arrays.xml یک فایل xml بسازید و نام آن را  arrays.xml گذاشته و کد های زیر را در آن قرار دهید. این آرایه شامل موارد ضروری برای ListPrefereces است.

۴. در مسیر res ⇒ xml یک فایل xml بسازید و نام آن را pref_main.xml قرار دهید. اگر مسیر گفته شده وجود نداشت یک پوشه بسازید و نام آن را xml قرار دهید.

 

صفحه تنظیمات را می توان با xml طراحی کرد، درست مثل طراحی صفحات activity در xml. ما از عناصر زیر در تنظیمات صفحه کنونی استفاده کرده ایم.

> EditTextPreference – برای جمع آوری ورودی متن از کاربر استفاده می شود.

> CheckBoxPreference – برای تغییر یک تنظیم نمایش داده می شود.

> ListPreference – نمایش diglog با لیست گزینه هایی برای انتخاب.

> SwitchPreference – روشن / خاموش یک تنظیم.

> RingtonePreference – لیست آهنگ های زنگ دستگاه را اجرا می کند که در آن کاربر می تواند صدای مورد نظر را انتخاب کند.

> Preference همراه با یک Intent  دارای عمل android.intent.action.VIEW – برای باز کردن مرورگر خارجی به یک URL.

۵. یک کلاس با نام AppCompatPreferenceActivity.java بسازید و کدهای زیر را در آن اضافه کنید. این کلاس سازگاری در همه دستگاه ها و نسخه ها را فراهم می کند.

۶. از طریق File ⇒ New ⇒ Activity ⇒ Empty Activity یک activity جدید بسازید و نام آنرا SettingsActivity بگذارید و تغییرات زیر را در آن انجام دهید.

> این کلاس باید از  AppCompatPreferenceActivity ارث بری کند که ما در موقع ساخت این کار را مرحله فوق انجام داده ایم.

> پاک کردن ()setContentView و بارگذاری ()MainPreferenceFragment.

> ()MainPreferenceFragment شامل تمام متد های مورد نیاز برای تبدیل فایل settings xml و انجام اعمال زمانیکه تنظیمات تغییر می کند است.

اکنون ساخت صفحه تنظیمات در اندروید تمام شده است. ما فقط نیاز به اضافه کردن یک آیتم منو در منوی نوار ابزار(Toolbar) برای رفتن به صفحه تنظیمات داریم.

 

۷. فایل menu_main.xml را در مسیر res ⇒ menu باز کنید و تنظیمات منو را در آن اضافه کنید. در صورت نبودن منو یک منو بسازید.

۸. فایل MainActivity.java را بازکنید و تغییرات لازم برای باز شدن SettingsActivity زمانی که انتخاب می شود را انجام دهید.

در نهایت ساخت صفحه تنظیمات در اندروید به صورت زیر خواهد بود.

Android Implementing Preferences Settings Screen
ساخت صفحه تنظیمات در اندروید

مدرس و برنامه‌نویس اندروید. تمام تجربه‌هایم را با شما شریک می‌شوم و دوستت دارم بتوانم با کمک و همراهی همه دوستان یک مرجع کامل فارسی برای برنامه‌نویسی اندروید ایجاد کنم.

عضو می‌شوم:)

مقاله های مرتبط :

دیدگاه خود را بیان کنید :

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

۳ دیدگاه برای این مطلب ثبت شده است

  1. عادل
    ۱:۱۴ ۱۳۹۶/۱۱/۱۶

    برای دریافت کتابخانه با اینکه قند شکن میزنم ولی بازم خطای زیر رو دارم:
    Unable to resolve dependency for ‘:app@debug/compileClasspath’: Could not resolve com.android.support:design:26.1.0.

    Could not resolve com.android.support:design:26.1.0.
    Required by:
    project :app
    > Could not resolve com.android.support:design:26.1.0.
    > Could not parse POM https://dl.google.com/dl/android/maven2/com/android/support/design/26.1.0/design-26.1.0.pom
    > Already seen doctype.

    • امیر زنگی آبادی
      ۱۲:۲۴ ۱۳۹۶/۱۱/۲۰

      برای اضافه کردن کتابخانه design نیاز به اینترنت و نرم افزار گذر از تحریم ندارید و این کتابخانه همراه SDK ارائه می شود.

  2. عادل گل
    ۹:۲۰ ۱۳۹۶/۱۱/۱۷

    سلام
    کتابخانه
    compile ‘com.android.support:design:26.1.0’

    سینک نمیشه و خطای زیر رو میده. قفند شکن هم ران هست.

    Unable to resolve dependency for ‘:app@debug/compileClasspath’: Could not resolve com.android.support:design:26.1.0.

    Could not resolve com.android.support:design:26.1.0.
    Required by:
    project :app
    > Could not resolve com.android.support:design:26.1.0.
    > Could not parse POM https://dl.google.com/dl/android/maven2/com/android/support/design/26.1.0/design-26.1.0.pom
    > Already seen doctype.