PreferenceActivity动作栏背景颜色

时间:2014-01-27 13:44:50

标签: android android-actionbar

逗人, 查看快照:

Settings Activity

我使用以下代码更改正常活动中使用的操作栏背景-same并正常工作:

@Override
protected void onPostCreate(Bundle savedInstanceState) {
    super.onPostCreate(savedInstanceState);

    ActionBar actionBar = getActionBar();
    actionBar.setBackgroundDrawable(getResources().getDrawable(R.color.actionbar_background));
    actionBar.setIcon(R.drawable.ic_settings);

    setupSimplePreferencesScreen();
}

问题是操作栏背景颜色更改为指定颜色,但文本和图标背景采用活动背景颜色。

怎么了?

2 个答案:

答案 0 :(得分:1)

变化:

actionBar.setBackgroundDrawable(getResources().getDrawable(R.color.actionbar_background));

要:

actionBar.setBackgroundDrawable(new ColorDrawable(getResources().getColor(R.color.actionbar_background)));

答案 1 :(得分:1)

此链接可帮助我解决问题:

My action bar title is taking the wrong color from theme

问题在于设置活动背景颜色,而不是:

<!-- Settings Activity -->

  <style name="SettingsTheme">
    <item name="android:Background">@color/main_menu_background</item>
    <item name="android:textColor">@color/font_color</item>
  </style>

我用这个:

<!-- Settings Activity -->

  <style name="SettingsTheme">
    <item name="android:windowBackground">@color/main_menu_background</item>
    <item name="android:textColor">@color/font_color</item>
  </style>