4

我想要的自定义首选项看起来非常像开箱即用的EditTextPreference,只是它的行为类似于结合了两个首选项的“拆分按钮”:如果用户单击左侧的文本,则会弹出编辑文本对话框;允许用户为偏好设置“标签”;如果用户单击右侧的按钮,则会弹出另一个窗口,允许用户设置首选项的“日期”。

我想我可以扩展 EditTextPreference 但我不确定如何为单个首选项控件(或 Android 术语中的“小部件”)维护两个单独的键。或者是否可以在没有子类化的情况下“混合”两个首选项?

4

1 回答 1

0

实际上,您不必使用内置的偏好小部件来管理您的偏好;例如,在我的应用程序中,我使用 PreferenceScreen 来调出带有自定义列表视图/适配器的多选对话框。如果您希望处理自己的键/值存储,您可以使用 findPreference() 绑定到首选项,在 PreferenceActivity 的 onCreate() 中设置值并将该值保留在 Activity 的 onPause() 中。检查键/值首选项存储可以通过 getSharedPreferences(file,MODE.PRIVATE) 和关联的 getter 方法完成。要编辑它们,请获取返回的 SharedPreferences 对象,并在进行更改后对其调用 edit() / commit() 。

这能回答你的问题吗?

于 2011-10-18T03:14:11.507 回答