android 5.0与状态栏融合
2019-01-25 本文已影响0人
追风z
/**
*由于整个功能是Android5.0以上的系统才支持的,因此我们现在代码中做了一个系统版本号的判断,
* 只有当版本号大于或等于21,也就是5.0以上系统时才会执行后面的代码。
* 接着我们调用了getWindow().getDecorView();方法拿到当前活动的DecorView,再调用它的
* setSystemUiVisibility()方法来改变系统UI的显示,这里传入
* SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN和SYSTEM_UI_FLAG_LAYOUT_STABLE就表示活动的布局会显示在状态栏
* 上面,
* 最后调用一下setStatusBarColor(传入R.layout.activity_weather)方法将状态栏设置成透明色
*
* 注意:中间用 “|”
* 注意:这个是在setContentView(R.layout.activity_weather);之前使用的
*/
if (Build.VERSION.SDK_INT >= 21) {
View decorView = getWindow().getDecorView();
//View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN:视图.系统_UI_标志_布局_全屏
//View.SYSTEM_UI_FLAG_LAYOUT_STABLE:视图.系统_UI_标志_布局_稳定
decorView.setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
| View.SYSTEM_UI_FLAG_LAYOUT_STABLE);
getWindow().setStatusBarColor(Color.TRANSPARENT);
}
setContentView(R.layout.activity_weather);