我正嘗試使用首選項屏幕。我遵循在線教程中的所有步驟(一旦我無法工作,我發現其他教程,並且步驟似乎沒有問題)。我進入首選項屏幕,編輯值,返回到調用活動(通過硬件返回按鈕)。在DDMS透視圖中,FileExplorer顯示應該存儲首選項的package_name_preferences.xml文件。它包含:Android:首選項未被自動存儲
<?xml version='1.0' encoding='utf-8' standalone='yes' ?>
<map>
<string name="false">kg</string>
</map>
雖然我期望(數據線只顯示)。
<string name="weight">kg</string>
另外,如果我去改變只有1個偏好,同樣價值的變化,而不是新建一行。我只是試圖寫我自己的偏好類,將數據存儲在文件或數據庫中,但我知道偏好應該工作,它只是不能正確保存我的東西。
編輯
教程使用: Main Tutorial - 用該作爲基礎的,簡化的,因爲我只需要3 listPreferences爲止。
Another One - 用這一個回來時,第一個安裝的Android,所以提到這個一個用於其喜好
代碼部分:(屏幕負荷,所以我沒有表現出艙單)
public class MyPrefs extends PreferenceActivity {
@Override
public void onCreate(Bundle bundle) {
super.onCreate(bundle);
addPreferencesFromResource(R.xml.my_prefs);
}
}
從MainScreen
my_prefs.xml<PreferenceScreen
xmlns:android="http://schemas.android.com/apk/res/android">
<PreferenceCategory android:title="Value Settings">
<ListPreference android:title="Distance"
android:summary="Metric (Kilometer) vs Imperial (Imperial)"
android:defaultValue="km"
android:key="@+id/distanceMesurement"
android:entries="@array/distance"
android:entryValues="@array/distance_values"/>
<ListPreference android:title="Weight"
android:summary="Metric (Kilogram) vs Imperial (Pound)"
android:defaultValue="kg"
android:key="@+id/weightMesurement"
android:entries="@array/weight"
android:entryValues="@array/weight_values"/>
</PreferenceCategory>
</PreferenceScreen>
調用MyPrefs
Intent i = new Intent(MainScreen.this, MyPrefs.class);
startActivity(i);
arrays.xml
<resources>
<string-array name="weight">
<item name="kg">Kilogram (kg)</item>
<item name="lb">Pound (lb)</item>
</string-array>
<string-array name="weight_values">
<item name="kg">kg</item>
<item name="lb">lb</item>
</string-array>
<string-array name="distance">
<item name="km">Kilometer (km)</item>
<item name="mi">Mile (mi)</item>
</string-array>
<string-array name="distance_values">
<item name="km">km</item>
<item name="mi">mi</item>
</string-array>
</resources>
你指的是哪個在線教程?如果你的代碼與那裏的代碼不同,請發佈相關部分。 – mikerowehl 2011-02-26 22:48:41
告訴我們一個代碼片段.... – mixkat 2011-02-26 22:52:57