应该说是常用半浸入式(状态类透明)
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//浸入式状态栏
View decorView = getWindow().getDecorView();
//注意两个Flag必须要结合在一起使用,表示会让应用的主体内容占用系统状态栏的空间
int option = View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN|View.SYSTEM_UI_FLAG_LAYOUT_STABLE;
//设置ui
decorView.setSystemUiVisibility(option);
//设置状态类透明
getWindow().setStatusBarColor(Color.TRANSPARENT);
//如果不要状态栏,也不应该有actionbar
ActionBar supportActionBar = getSupportActionBar();
supportActionBar.hide();
}
完全浸入式
游戏,或者视频的时候使用
@Override
public void onWindowFocusChanged(boolean hasFocus) {
super.onWindowFocusChanged(hasFocus);
if (hasFocus && Build.VERSION.SDK_INT >= 19) {
View decorView = getWindow().getDecorView();
decorView.setSystemUiVisibility(
View.SYSTEM_UI_FLAG_LAYOUT_STABLE
| View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
| View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_FULLSCREEN
| View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY);
}
}