我想從共享首選項中檢索「entries」而不是「entryValue」。我使用這一點,它得到entryValue:如何獲取共享首選項的值
String notifyInterval = PreferenceManager.getDefaultSharedPreferences(mActivity).getString(ACCUWX.Preferences.PREF_NOTIFY_INTERVAL, null);
這裏是XML和數組文件:
<ListPreference
android:key="pref_temp_notifications"
android:title="@string/notifications"
android:entries="@array/pref_temp_notifications"
android:entryValues="@array/pref_temp_notifications_values"
android:dialogTitle="@string/notifications"
android:defaultValue="2"/>
<string-array name="pref_temp_notifications">
<item>@string/my_current_location</item>
<item>@string/home_location</item>
<item>@string/off</item>
</string-array>
<string-array name="pref_temp_notifications_values">
<item>0</item>
<item>1</item>
<item>2</item>
</string-array>
所以我想檢索字符串值,而不是數字。數字是我返回並分配給我的變量notifyInterval。我如何抓取文字?
爲什麼不直接替換'0,1,2'以字符串值 – Wozza 2011-12-30 13:31:17
我不這樣做,因爲有我需要兩個字符串值,在代碼中計算的整數值,其他首選項。 – taraloca 2011-12-30 14:24:05
SharedPreferences的getAll()方法將返回所有鍵值對。從這張地圖你可以得到所有關鍵值。 – Yury 2011-12-30 14:36:23