android 高仿网易新闻夜间模式

网易新闻有一个小功能,功能虽小,但看的出来大公司的产品设计确实很不错,今天就实现下改功能,如果用户点击选择了夜间模式或者日间模式,那么所有的activity背景都要变,其实android源码给每个activity 内容区域都定义了一个id,就是android.R.id.content,因为所有的activity背景要变色,因此肯定要写一个基类,代码如下:


public class BaseActivity extends Activity {
   protected void onCreate(android.os.Bundle savedInstanceState) {
	   super.onCreate(savedInstanceState);
   };
   @Override
	public void setContentView(int layoutResID) {
		super.setContentView(layoutResID);
		(((ViewGroup) findViewById(android.R.id.content)).getChildAt(0)).setBackgroundColor(getResources().getColor(
						true ? R.color.root_view_background_color_night
								: R.color.root_view_background_color));
	}
}

用户点击日间或者夜间模式,肯定是存储一个值到SharedPreferences中,我在上面的代码中是写了true,如果真实的项目中肯定是从SharedPreferences文件中读取,就是这样了,简单吧!


你可能感兴趣的:(android 高仿网易新闻夜间模式)