Android開發(fā)之沉浸狀態(tài)欄
protected void setStatusBar() {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {//5.0及以上
? ? ? ? View decorView = getWindow().getDecorView();
int option = View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
? ? ? ? ? ? ? ? | View.SYSTEM_UI_FLAG_LAYOUT_STABLE;
decorView.setSystemUiVisibility(option);
//根據(jù)上面設(shè)置是否對狀態(tài)欄單獨設(shè)置顏色
? ? ? ? if (useThemestatusBarColor) {
getWindow().setStatusBarColor(getResources().getColor(R.color.white));//設(shè)置狀態(tài)欄背景色
? ? ? ? }else {
getWindow().setStatusBarColor(Color.TRANSPARENT);//透明
? ? ? ? }
}else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {//4.4到5.0
? ? ? ? WindowManager.LayoutParams localLayoutParams = getWindow().getAttributes();
localLayoutParams.flags = (WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS | localLayoutParams.flags);
}else {
Toast.makeText(this,"低于4.4的android系統(tǒng)版本不存在沉浸式狀態(tài)欄", Toast.LENGTH_SHORT).show();
}
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M &&useStatusBarColor) {//android6.0以后可以對狀態(tài)欄文字顏色和圖標(biāo)進行修改
? ? ? ? getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN | View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR);
}
}