如何设置 PreferenceFragmentCompat 的样式

Posted

技术标签:

【中文标题】如何设置 PreferenceFragmentCompat 的样式【英文标题】:How to style PreferenceFragmentCompat 【发布时间】:2016-03-17 03:49:46 【问题描述】:

我使用的是PreferenceFragmentCompat,但我认为它的样式不正确。

Preferences 的标题似乎太大了,PreferenceCategory 文本不可读,整个想法似乎都错了。

这就是我在 theme.xml 中的内容

<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
    ...
    <item name="preferenceTheme">@style/PreferenceThemeOverlay</item>
</style>

<style name="PreferenceThemeOverlay">
    <item name="preferenceScreenStyle">@style/Preference.PreferenceScreen</item>
    <item name="preferenceFragmentStyle">@style/PreferenceFragment</item>
    <item name="preferenceCategoryStyle">@style/Preference.Category</item>
    <item name="preferenceStyle">@style/Preference</item>
    <item name="preferenceInformationStyle">@style/Preference.Information</item>
    <item name="checkBoxPreferenceStyle">@style/Preference.CheckBoxPreference</item>
    <item name="switchPreferenceCompatStyle">@style/Preference.SwitchPreferenceCompat</item>
    <item name="dialogPreferenceStyle">@style/Preference.DialogPreference</item>
    <item name="editTextPreferenceStyle">@style/Preference.DialogPreference.EditTextPreference
    </item>
    <item name="preferenceFragmentListStyle">@style/PreferenceFragmentList</item>
</style>

【问题讨论】:

chris.banes.me/2014/11/12/theme-vs-style 请参阅***.com/a/52960668/4310905,了解一次修复所有首选项的解决方案 【参考方案1】:

关注this。

改变

<item name="preferenceTheme">@style/PreferenceThemeOverlay</item>

<item name="preferenceTheme">@style/PreferenceThemeOverlay.v14.Material</item>

然后,更改 build.gradle 依赖项

com.android.support:preference-v7

com.android.support:preference-v14

【讨论】:

此方案不支持 SDK 我认为,com.android.support:preference-v14 应该是对 com.android.support:preference-v7 的补充,它不是这里解释的替代品:link

以上是关于如何设置 PreferenceFragmentCompat 的样式的主要内容,如果未能解决你的问题,请参考以下文章

如何设置div铺满

如何进入电脑BIOS设置?

如何设置窗口在最前面?

自己购买的域名如何设置子域名,如何设置访问多个项目,万网

outlook如何设置自动回复

如何设置默认字体功能设置?