كيف يمكنني الحصول على القيمة الافتراضية لـ ListPreference كما هو محدد في ملف XML؟
-
21-12-2019 - |
سؤال
كيف يمكنني برمجياً الحصول على القيمة الافتراضية لـ a ListPreference
كما حددتها في XML؟
هنا مقتطف من بلدي ListPreference
:
<ListPreference
android:defaultValue="60"
android:entries="@array/interval_entries"
android:entryValues="@array/interval_values"
android:key="interval"
android:summary="@string/interval_summary"
android:title="@string/interval_title" />
لقد قمت بمراجعة المستندات ولكني لم أجد طريقة للحصول على ذلك.ربما أكون قد تجاهلت ذلك.
المحلول
بالنسبة إلى PreferenceActivity (المهمل مع Fragment)، حاول:
ListPreference lp = (ListPreference) this.findPreference(this.getString(R.string.my_key));
lp.getValue();
أين مفتاحي هي القيمة الأساسية المخصصة لهذا ListPreference.ملحوظة:يتم تعريف هذه القيمة في strings.xml
.إذا كنت قد قمت بترميز مفتاحك بسلسلة حرفية، فقم بالاستبدال مفتاحي مع أي سلسلة قدمتها لـ android:key
بطاقة شعار.لذا، في حالتك، ستكون الرموز كما يلي:
ListPreference lp = (ListPreference) this.findPreference("interval");
lp.getValue();
نصائح أخرى
هل تحاول تعيين القيمة الافتراضية في البداية أو إعادة تعيينها إلى الافتراضي؟بغض النظر عن نظرة على:
giveacodicetagpre.و الوثائق
لا تنتمي إلى StackOverflow