如果你使用过设置界面,你会很清楚这个主题讲的是什么内容,当你在点击一个设置项之后,跳到另外一个子设置项,你会发现,你看不到任何东西,因为背景是黑色的,所以本文内容讲解的就是这个问题的解决办法,先看运行实例的截图:


当点击“其他个人信息”设置后,会跳转到另外一个界面,如图所示:


屏幕的背景变成白色,一下是解决办法的源代码:

  1. /*

  2. * 在Preference中设置使用Theme.Light主题,则打开Preference为白色主题,

  3. * 当Preference中内嵌有其他PreferenceScreen的时候,

  4. * 打开内嵌的PreferenceScreen则屏幕背景为黑色的.

  5. * 下面的这个方法实现的是:

  6. * 在打开内嵌PreferenceScreen的时候设置其背景色.

  7. */  

  8. PreferenceScreen s= (PreferenceScreen) findPreference("other_individual_msg");    

  9. s.setOnPreferenceClickListener(new OnPreferenceClickListener() {    

  10. @Override    

  11. public boolean onPreferenceClick(Preference preference) {    

  12.  PreferenceScreen a = (PreferenceScreen) preference;    

  13.  a.getDialog().getWindow().    

  14.  setBackgroundDrawableResource(android.R.drawable.screen_background_light);    

  15.  return false;    

  16.  }    

  17. });