如何获取Xml中定义的值为整数的Android ListPreference?

前端之家收集整理的这篇文章主要介绍了如何获取Xml中定义的值为整数的Android ListPreference?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
可以在Xml中定义ListPreference,并使用getInt从SharedPreferences中检索值吗?这是我的Xml:
<ListPreference android:key="@string/prefGestureAccuracyKey"
    android:title="@string/prefGestureAccuracyTitle" android:summary="@string/prefGestureAccuracyDesc"
    android:entries="@array/prefNumberAccuracyLabels" android:entryValues="@array/prefNumberAccuracyValues"
    android:dialogTitle="@string/prefGestureAccuracyDialog"
    android:persistent="true" android:defaultValue="2"
    android:shouldDisableView="false" />

我想要获得的值如下:int val = sharedPrefs.getInt(key,defaultValue)。

目前我必须使用getString并解析结果。

我的理解是ListPreference只能用于字符串数组。你必须使用getString()并自己转换为整数。请参阅 http://code.google.com/p/android/issues/detail?id=2096错误报告。它似乎不像Google计划扩展ListPreference来处理除字符串之外的任何东西。

另外:您需要将首选项存储为字符串。否则,您的首选项活动将在启动时崩溃,并尝试读取字符串值。

猜你在找的XML相关文章