如果你使用过设置界面,你会很清楚这个主题讲的是什么内容,当你在点击一个设置项之后,跳到另外一个子设置项,你会发现,你看不到任何东西,因为背景是黑色的,所以本文内容讲解的就是这个问题的解决办法,先看运行实例的截图:
当点击“其他个人信息”设置后,会跳转到另外一个界面,如图所示:
屏幕的背景变成白色,一下是解决办法的源代码:
/*
* 在Preference中设置使用Theme.Light主题,则打开Preference为白色主题,
* 当Preference中内嵌有其他PreferenceScreen的时候,
* 打开内嵌的PreferenceScreen则屏幕背景为黑色的.
* 下面的这个方法实现的是:
* 在打开内嵌PreferenceScreen的时候设置其背景色.
*/
PreferenceScreen s= (PreferenceScreen) findPreference("other_individual_msg");
s.setOnPreferenceClickListener(new OnPreferenceClickListener() {
@Override
public boolean onPreferenceClick(Preference preference) {
PreferenceScreen a = (PreferenceScreen) preference;
a.getDialog().getWindow().
setBackgroundDrawableResource(android.R.drawable.screen_background_light);
return false;
}
});