1

我有一个preferences.xml,其中包含我的应用程序的各种设置——它们可能的值\名称、默认值等。

它以前只是在PreferenceActivitywith中使用addPreferencesFromResource()

现在我正在创建一个完全自定义的设置 UI,我希望它与PreferenceActivity.

我想要的只是从 XML (as PreferenceScreen) 中获得我的偏好层次结构,这样我就可以使用它来构建我自己的 UI。我不想要 Android 的列表适配器,我不想要对话框等。只有数据模型。

可悲的是,我还没有找到一个很好的方法来做到这一点。我能想到的唯一接近的事情是扩展PreferenceActivity,提供自定义“R.id.list”,并将其可见性设置为 GONE,因此没有人会看到 Android 的偏好 UI。

有什么好的,干净的方法来实现这一点?

4

1 回答 1

0

您可以通过直接使用PreferenceManager来完成此操作。首先,您将调用setDefaultValues来加载您的首选项 XML 资源。接下来,您可以通过调用getDefaultSharedPreferences访问SharedPreferences并通过 SharedPreferences 对象执行任何首选项更改。要编辑您的首选项,您需要从 SharedPreferences 对象中获取Editor 。确保在编辑器上调用commit以实际保存您所做的更改。

于 2013-06-06T15:20:55.433 回答