Multi Select ListPreference على Android
-
01-10-2019 - |
سؤال
أي فكرة عن تنفيذ ListPreference متعددة الاختيار (مربعات الاختيار) على Android؟
هل سيتعين علي تمديد قائمة المرشحين؟
هل هناك أي فصول موثقة بالفعل للقيام بذلك؟
شكرًا
المحلول 3
وجدت رابطًا مفيدًا جدًا:http://blog.350nice.com/wp/archives/240
نصائح أخرى
Multi Select ListPreference يأتي الآن أصلاً مع Android من مستوى API 11 (قرص العسل).http://developer.android.com/reference/android/preference/multiselectpreference.html
لأنه سيكون لفترة طويلة قبل أن يكون للأجهزة قرص العسل أو مثبتة لاحقًا ، أوصي بأشخاص للالتزام بـ http://blog.350nice.com/wp/archives/240 المحلول.
تحرير: أعتقد في هذه اللحظة من الزمن (بعد ما يقرب من 3 سنوات من نشر هذه الإجابة في الأصل) من الأفضل أن تستخدم الإصدار الأصلي الآن لأن غالبية الأجهزة لديها Android 4 وما فوق.
نحن سوف ، http://blog.350nice.com/wp/archives/240 لا يوفر حلًا ، ولكن الحل الأكثر بساطة هو تطبيق شاشة تفضيل الطفل داخل الوالد ، ثم يمكن أن تحتوي شاشة تفضيل الطفل على خانات اختيار متعددة. أعلم ، إنه ليس الحل الأفضل ، ولكنه ينجز المهمة.
على سبيل المثال - التفضيل أدناه
<PreferenceCategory
android:title="Regular messages"
android:key="regular_messages">
<CheckBoxPreference
android:key="enable_regular_messages"
android:summary="Enable or disable regular messages"
android:title="Send regular messages"
android:defaultValue="true"
/>
<ListPreference
android:key="send_interval"
android:title="Send interval"
android:summary="Define how often you want to send messages"
android:defaultValue="60000"
android:entries="@array/send_interval"
android:entryValues="@array/send_interval_values"
android:dependency="enable_regular_messages"
/>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
android:title="Messages type"
android:key="messages_type"
android:summary="Select the type of messages to be sent"
android:dependency="enable_regular_messages">
<CheckBoxPreference
android:key="enable_status_messages"
android:summary="Enable or disable status messages"
android:title="Send status messages"
android:defaultValue="true"
/>
<CheckBoxPreference
android:key="enable_event_messages"
android:summary="Enable or disable event messages"
android:title="Send event messages"
android:defaultValue="true"
/>
<CheckBoxPreference
android:key="enable_critical_messages"
android:summary="Enable or disable critical messages"
android:title="Send critical messages"
android:defaultValue="true"
/>
</PreferenceScreen>
</PreferenceCategory>
إليك تطبيق من فئة واحدة مع defaultValue
الدعم:
https://github.com/yanchenko/droidparts/blob/develop/droidparts/src/org/droidparts/widget/multiselectpreference.java
هناك مشروع جيثب فقط لهذا