以不同单位显示Android首选项

时间:2012-02-01 17:37:36

标签: android android-layout android-preferences

我有一个Android偏好活动,其中布局直接连接到我的对象键/值对,例如:

<EditTextPreference
     android:key="timeout"
     android:defaultValue="timeout"
     android:title="Timeout"
     android:summary="Timeout (ms)"
     android:dialogTitle="Timeout (ms)" />

我需要以某种方式更改它,以便显示功能(和显示)在几秒钟内。从理论上讲,我可以更改它,以便值的存储和重新使用秒,但这种情况经常发生,所以我不想改变它,如果我可以避免它。

构成我的应用程序的活动/服务都直接来自Android偏好设置,例如:

SharedPreferences settings = PreferenceManager.getDefaultSharedPreferences(ctx);
String s = settings.getString("timeout", ctx.getString(R.string.timeout));

那么 - 更改首选项的显示功能的最佳方法是什么,同时仍以毫秒为单位存储值?

1 个答案:

答案 0 :(得分:1)

我认为,android正在使用setText()方法保存EditTextPreference的值。因此,您可以使用自定义视图扩展EditTextPreference并修改setText()