将背景颜色设置为PreferenceActivity

时间:2016-03-23 16:40:23

标签: android preferenceactivity

我对在偏好活动中设置背景颜色感到困惑。我的settingsactivity没有附加任何layout.xml,因此生成了来自headers.xml和preferences.xml的所有内容。我在我的settingsactivity类的onCreate方法中使用了this回答。

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setupActionBar();
    this.getWindow().getDecorView().setBackgroundColor(0xFF111321);
}

使用此功能,我可以看到preferences中的更改(对不起颜色),但我的headers标题保持不变。要更改标题的背景,我必须写:

 @Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setupActionBar();
    this.getWindow().getDecorView().setBackgroundColor(0xFF111321);
    listView = getListView();
    listView.setBackgroundColor(0xFF111321);
}

此外,如果我不使用getWindow(),则会发生相反的情况。

为什么会这样? 我讨厌为相同的功能编写重复的代码,有没有办法用一个代码来完成需求。

N.B。 getWindow()也适用于我的其他活动。

0 个答案:

没有答案