9

标题说明了一切:如何设置 PreferenceFragmentCompat 的样式。我的 v14/style.xml 是

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <style name="AppBaseTheme" parent="Theme.AppCompat.Light.NoActionBar">
        <item name="android:editTextStyle">@style/Widget.EditText.White</item>
        <item name="preferenceTheme">@style/PreferenceThemeOverlay</item>
    </style>

    <style name="Widget.EditText.White" parent="@android:style/Widget.EditText">
        <item name="android:textColor">#ffffffff</item>
    </style>
</resources>

基本主题有黑色背景 - 首选项屏幕然后是不可读的,因为我在黑色背景上有黑色文本。

我已经尝试了很多东西,但我无法更改文本颜色。

我必须做的是在设置片段处于活动状态时将片段容器背景颜色设置为白色。一个丑陋的黑客,而不是我想做的事。

4

2 回答 2

12

回答我自己的问题:我的 v14/style.xml 现在是

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <style name="AppBaseTheme" parent="Theme.AppCompat.Light.NoActionBar">
        <item name="android:editTextStyle">@style/Widget.EditText.White</item>
        <item name="preferenceTheme">@style/PreferenceThemeOverlay.v14.Material</item>
    </style>

    <style name="Widget.EditText.White" parent="@android:style/Widget.EditText">
        <item name="android:textColor">#ffffffff</item>
    </style>

    <style name="PreferenceThemeOverlay.v14">
        <item name="android:background">@color/settings_background</item>
        <item name="android:textColor">@color/settings_text_colour</item>
        <item name="android:textColorSecondary">@color/settings_text_colour_secondary</item>
    </style>
</resources>

我现在的问题是设置 ListPreference 的样式。

为什么这么难?如果有任何与样式偏好相关的文档,它会被很好地隐藏起来。呸呸呸!

于 2015-11-13T01:40:12.207 回答
0

查看 github 项目 Gericop/Android-Support-Preference-V7-Fix的 README

于 2015-12-01T21:27:25.730 回答