我需要创建一个settings screen,其中只有前半部分包含首选项。
我在考虑加入PreferenceFragment
,但我需要支持更旧的设备(支持的最低API级别为9),我还需要显示操作栏(目前正在使用appcompat库)。
根据this question,我搞砸了。
所以现在我需要复制首选项列表的外观。
我考虑过包含ListView
,并编写一个自定义适配器,为每个“首选项”类型提供不同的项目布局。我需要模仿CheckBoxPreference
和ListPreference
。列表首选项很简单,因为我只需要使用2个文本行项目(android.R.layout.simple_list_item_2
)的默认布局,然后显示带有选项的自定义对话框。但我无法在内置资源中找到复选框首选项的布局。
我将自己管理SharedPrefs。
问题:
CheckBoxPreference
的布局,用于类似布尔值的设置。答案 0 :(得分:2)
我遇到了这个确切的问题,在我开始实现支持库之前我没有意识到这一点。一堆工作什么都没有。
另一方面,我需要支持所有旧设备,除了手机而不是平板电脑。所以我只是在这些设备上使用了PreferenceActivity(检查Build.VERSION.SDK_INT),并且仅在具有平板电脑大小屏幕的SDK 11+设备上使用PreferenceFragment。您甚至可以使用版本号和屏幕大小限定布局资源文件夹,这样您就不会编写任何代码。