1

我最近下载了 Android SDK 的最新更新,我意识到addPreferencesFromResource(int resourceID),findPreference(String preference)getPreferenceScreen()withinPreferenceActivity已被贬值,有利于PreferenceFragment它的实现addPreferencesFromResource(int resourceID)

这很好,我能够重写我所有的偏好屏幕,以便能够使用PreferenceFragment4.x 设备的新标准。然而,问题是PreferenceFragment屏幕在 Android 2.3 或更早版本上不显示。打开首选项屏幕时,它实际上显示一个空白屏幕。所以现在我检查了设备正在使用哪个 SDK,PreferenceFragment如果设备是 3.0+,则显示,如果它是 3.0 之前的,则显示旧的折旧方式。

有一个更好的方法吗?PreferenceFragment如果有办法让代码在 2.2 和 2.3 中正常工作,我不想使用折旧代码。在 3.0 之前的设备中是否有一种新的标准方法可以在不使用折旧代码的情况下执行此操作?(我的应用程序是为 2.2+ 设计的,我想继续支持回到 2.2 以获得更大的用户群)

如果有人能指出我正确的方向,我可以从那里做腿部工作。

4

1 回答 1

2

不幸的是,兼容性库(专为 API 4+ 设计)不支持 PreferenceFragment - 所以在您将目标 API 提高到 11 之前,您所拥有的可能是最好的解决方案。

于 2012-11-06T19:10:03.253 回答