【问题标题】:Android, Preference Screen popup window text colorAndroid,首选项屏幕弹出窗口文本颜色
【发布时间】:2017-06-15 15:00:11
【问题描述】:

有谁知道 xml 主题/样式中的哪个参数负责 PreferenceScreen 弹出窗口中文本的颜色? 举例说明:

文本颜色是黑色的,所以我尝试过的样式属性没有影响它。这个背景是白色的,但后来我想把它改成深色的,我也需要改变文本的颜色。

PreferenceScreen 片段。

public final class SettingsFragment extends PreferenceFragment {
@Override
public void onCreate(Bundle savedInstanceState) {
    // setting style of the preference screen
    this.getActivity().setTheme(R.style.Theme_Preference_Screen);
    super.onCreate(savedInstanceState);
    addPreferencesFromResource(R.xml.preferences);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
    View view = super.onCreateView(inflater, container, savedInstanceState);
    // I'm setting background color to make cover for activity behind preference screen
    if (view != null) {
        view.setBackgroundColor(ContextCompat.getColor(this.getActivity(), R.color.colorNavyBlue));
    }
    return view;
}

我分配给偏好屏幕的样式。在@color/colorJewel 之后休息是多余的,但是我想把它留在这里,这样你就可以看到我尝试了哪一个。

<style name="Theme_Preference_Screen" parent="Theme.AppCompat.DayNight.NoActionBar">
    <item name="colorPrimary">@color/colorJewel</item>
    <item name="colorPrimaryDark">@color/colorVoid</item>
    <item name="colorAccent">@color/colorFuschia</item>
    <item name="android:background">@color/colorVoid</item>
    <item name="android:textColor">@color/colorStark</item>
    <item name="android:listDivider">@color/colorStark</item>
    <item name="android:editTextColor">@color/colorStark</item>
    <item name="colorButtonNormal">@color/colorJewel</item>
    <item name="android:textColorSecondary">@color/colorStark</item>
    <item name="android:actionMenuTextColor">@color/colorStark</item>
    <item name="android:textColorAlertDialogListItem">@color/colorStark</item>
    <item name="android:textColorHighlight">@color/colorStark</item>
    <item name="android:textColorHint">@color/colorStark</item>
    <item name="android:keyTextColor">@color/colorStark</item>
    <item name="android:textAppearanceLargePopupMenu">@color/colorStark</item>
    <item name="android:textAppearanceSmallPopupMenu">@color/colorStark</item>
    <item name="android:textColorLink">@color/colorStark</item>
</style>

【问题讨论】:

    标签: android xml


    【解决方案1】:

    我只是通过将 ListPreference(例如在 R.xml.preference 中)更改为 com.afollestad.materialdialogs.prefs.MaterialListPreference from Material-dialogs liberary 才成功。然后弹出窗口从我的主题中选择了背景颜色。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-08-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多