我試過在這裏和谷歌上搜索一個答案,但沒有設法得到很遠。無法獲取listPreference在Android中工作
我試圖在Android平臺上做一個listPreference
,允許用戶選擇文本顏色。目前它只是返回默認值,我不太確定爲什麼我的if/else語句不起作用。
的prefs.xml:
<ListPreference
android:title="textcolorpreference"
android:key="list1"
android:summary="Text Color"
android:entries="@array/list"
android:entryValues="@array/lValues"
/>
array.xml:
<string-array name="list">
<item>Red</item>
<item>Green</item>
<item>Blue</item>
<item>Yellow</item>
</string-array>
<string-array name="lValues">
<item>1</item>
<item>2</item>
<item>3</item>
<item>4</item>
</string-array>
的Java:
SharedPreferences getPrefs =
PreferenceManager.getDefaultSharedPreferences(getBaseContext());
String values = getPrefs.getString("list", "2");
if(values.contentEquals("1")){
tp.setColor(Color.RED);
} else if(values.contentEquals("2")){
tp.setColor(Color.GREEN);
} else if(values.contentEquals("3")){
tp.setColor(Color.BLUE);
}else if(values.contentEquals("4")){
tp.setColor(Color.YELLOW);
}
目前僅列表優先級的缺省值,例如工作如果我把listPreference默認值a String values = getPrefs.getString("list", "2")
我得到color.GREEN
,這讓我覺得我需要添加一個偏好改變的偵聽器,但我目前無法實現它。
我非常感謝你們提供的幫助!
你'機器人:鍵= 「列表1」'但你調用'getString(「list」' – 2013-02-10 14:48:19