當我推送它時,該值在SharedPreference中保存得很好,但當我再次打開PreferenceActivity時,它不顯示。 它運行時,如果我不把android:entryValues
,但我不能使用它,因爲使用不同的語言有一些差異,以查看預設的價值是什麼。偏好活動錯誤:關閉後沒有顯示選定的選項活動
¿我該怎麼做?
感謝您的閱讀。
代碼:
的PreferencesMenu 活動:
public class PreferencesMenu extends PreferenceActivity
{
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setDefaultKeyMode(MODE_PRIVATE);
addPreferencesFromResource(R.layout.preferences);
getPreferenceManager().setSharedPreferencesName("Gat_Preferences");
}
}
一些的strings.xml的:
<string-array name="menu_preference_general_order_array">
<item>Default</item>
<item>Alphabetical</item>
</string-array>
<string-array name="menu_preference_general_order_values">
<item>default</item>
<item>alphabetical</item>
</string-array>
的preferences.xml 佈局:
<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android" >
...
<PreferenceCategory android:title="@string/menu_preference_general">
<ListPreference
android:key="list_order"
android:persistent="true"
android:title="@string/menu_preference_general_order_title"
android:summary="@string/menu_preference_general_order_description"
android:entries="@array/menu_preference_general_order_array"
android:entryValues="@array/menu_preference_general_order_values"/>
</PreferenceCategory>
</PreferenceScreen>
MOD:
我使用Android 2.1,我不能使用新的片段偏好。
在側面注意,我不會亂用文件名稱。除非你有理由,並且我告訴你我從來沒有這麼做過,最好是調用PreferenceManager來獲取默認的SharedPreferences並讓API工作。您在不同的類之間抽象文件名,從而避免了潛在的錯誤來源(拼寫錯誤等)。關於你的佈局vs xml問題,我在1.5測試了它,它工作。但我仍然建議你把它放在正確的地方。 – davidcesarino
感謝您的夢幻般的答案(它運行完美)。我會嘗試你所說的關於不使用標籤的偏好,我不知道R.xml.preferences,但無論如何感謝。你從哪裏看到這些東西? API可能?一本書? –
經驗:-)和API。 – davidcesarino