需参考的博客: Android状态栏微技巧,带你真正理解沉浸式模式
只有在Android 4.4及以上系统才支持沉浸式模式,即 Build.VERSION.SDK_INT >= 19
其中,对于状态栏的可见性setSystemUiVisibility(int visibility)方法可传入的实参有以下两个需要特别说明的:
1. View.SYSTEM_UI_FLAG_FULLSCREEN:Activity全屏显示,且状态栏被隐藏覆盖掉。
2. View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN:Activity全屏显示,但状态栏不会被隐藏覆盖,状态栏依然可见,Activity顶端布局部分会被状态遮住。
同时, SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN和SYSTEM_UI_FLAG_LAYOUT_STABLE,注意两个Flag必须要结合在一起使用,表示会让应用的主体内容占用系统状态栏的空间,最后再调用Window的setStatusBarColor()方法将状态栏设置成透明色,这就实现了饿了么首页的显示。如以下: