Activity常用设置
Q1.设置Activity全屏/状态栏-导航栏透明
Activity全屏@link
/*set it to be no title*/ requestWindowFeature(Window.FEATURE_NO_TITLE); /*set it to be full screen*/ getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
状态栏-导航栏背景透明@link
// 隐藏标题栏 requestWindowFeature(Window.FEATURE_NO_TITLE); View root = LayoutInflater.from(this).inflate(R.layout.activity_main, null); // 或者 在界面的根层加入 android:fitsSystemWindows=”true” // 这个属性,这样就可以让内容界面从 状态栏 下方开始。 ViewCompat.setFitsSystemWindows(root, true); setContentView(root); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { // Android 5.0 以上 全透明 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); // 状态栏(以上几行代码必须,参考setStatusBarColor|setNavigationBarColor方法源码) window.setStatusBarColor(Color.TRANSPARENT); // 虚拟导航键 window.setNavigationBarColor(Color.TRANSPARENT); } else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { // Android 4.4 以上 半透明 Window window = getWindow(); // 状态栏 window.addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS); // 虚拟导航键 window.addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION); }