状态栏问题
目录:
1.透明状态栏效果;
2.隐藏系统状态栏和标题栏(全屏显示)
3.更多
1.透明状态栏效果:
上图如下:
核心代码:
getWindow().requestFeature(Window.FEATURE_NO_TITLE);
if(VERSION.SDK_INT >= VERSION_CODES.LOLLIPOP) {
Window window = getWindow();
window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS
| WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);
window.getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
| View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_LAYOUT_STABLE);
window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
window.setStatusBarColor(Color.TRANSPARENT);
window.setNavigationBarColor(Color.TRANSPARENT);
}
setContentView(R.layout.activity_main);
2.隐藏系统状态栏和标题栏(全屏显示)
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
hideStatusBar();
setContentView(R.layout.main);
}
//在 Activity.setCurrentView()之前调用
public void hideStatusBar(){
//隐藏标题
requestWindowFeature(Window.FEATURE_NO_TITLE);
//定义全屏参数
int flag =WindowManager.LayoutParams.FLAG_FULLSCREEN;
//获得窗口对象
Window curWindow = this.getWindow();
//设置Flag标示
curWindow.setFlags(flag, flag);
}