如何更改状态栏颜色?我用5.0构建,我的目标sdk是21,这段代码不起作用......
setContentView(R.layout.main_activity);
if (Build.VERSION.SDK_INT >= 21){
try {
getWindow().setStatusBarColor(Color.RED);
} catch (Exception e) {
e.printStackTrace();
}
}
答案 0 :(得分:8)
Documentation说的是关于setStatusBarColor方法的那个
"要使此操作生效,窗口必须绘制系统栏 背景与FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS和 不得设置FLAG_TRANSLUCENT_STATUS。 "
所以对我来说,这很有用(注意代码中的" addFlags"行):
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
getWindow().addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
getWindow().setStatusBarColor(Color.RED);
}