android 4.4 之后,可以使用SYSTEM_UI_FLAG_IMMERSIVE这个flag 来使你的app 实现真正的 全屏幕,这个flag是结合 隐藏底部导航条,和隐藏头部状态条两个的。 当这个状态开启之后,你的app还是接受所有的触摸事件,你可以设置SYSTEM_UI_FLAG_IMMERSIVE_STICKY利用这个flag,可以设置过几分钟后再次自动的隐藏 如果你使用的是SYS...
使用 SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION 和 SYSTEM_UI_FLAG_LAYOUT_STABLE 即可。 使用全屏沉浸模式 这是4.4版本新加的模式,设置标志为 SYSTEM_UI_FLAG_IMMERSIVE 和 SYSTEM_UI_FLAG_IMMERSIVE_STICKY两种。经常配合着 SYSTEM_UI_FLAG_HIDE_NAVIGATION 和 SYSTEM_UI_FLAG_FULLSCREEN 使用。 (补充:FLAG_IMMERSIVE...
[Android.Runtime.Register("SYSTEM_UI_FLAG_IMMERSIVE")] public const Android.Views.SystemUiFlags SystemUiFlagImmersive = 2048; Field Value Value = 2048 SystemUiFlags Attributes RegisterAttribute Remarks Flag for#setSystemUiVisibility(int): View would like to remain interactive when hiding the navigati...
SYSTEM_UI_FLAG_LOW_PROFILE——此模式下,状态栏的图标可能是暗的 SYSTEM_UI_FLAG_HIDE_NAVIGATION——隐藏导航栏 SYSTEM_UI_FLAG_FULLSCREEN——全屏,隐藏状态栏和导航栏 SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN——全屏,隐藏导航栏,状态栏浮在布局上。 SYSTEM_UI_FLAG_IMMERSIVE——沉浸式:半透明的状态栏和导航栏 S...
SYSTEM_UI_FLAG_IMMERSIVE正如前面所说的SYSTEM_UI_FLAG_HIDE_NAVIGATION和SYSTEM_UI_FLAG_FULLSCREEN在用户与屏幕有任何交互时,都会被清除。过后如需隐藏目的,又得重新设置。而此标签正是防止这种情况而加入,设置此标签后,只有从屏幕上方下滑,或者从屏幕下方上滑时才会执行清除,其他普通交互不会变化。
其实实现的原理都是一样的,隐藏导航栏也就是使用了不同的UI Flag而已,修改MainActivity中的代码,如下所示: super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ViewdecorView=getWindow().getDecorView(); intoption=View.SYSTEM_UI_FLAG_HIDE_...
这里我们同时使用了SYSTEM_UI_FLAG_HIDE_NAVIGATION和SYSTEM_UI_FLAG_FULLSCREEN,这样就可以将状态栏和导航栏同时隐藏了。现在重新运行一下程序,效果如图所示。 这次看上去好像终于是完全全屏化了,但其实上这离真正的沉浸式模式还差得比较远,因为在这种模式下,我们触摸屏幕的任意位置都会退出全屏。
1.游戏中的SystemUiFlag是如何使用 游戏沉浸式的效果绝大多数都是全屏,在手指在状态栏下滑时,显示出状态栏,通过上面的介绍就选用的Flags怎么组合呢, intflags=View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY|View.SYSTEM_UI_FLAG_HIDE_NAVIGATION|View.SYSTEM_UI_FLAG_FULLSCREEN ...
SYSTEM_UI_FLAG_IMMERSIVE = 0x00000800;public static final int SYSTEM_UI_FLAG_IMMERSIVE_STICKY= 0x00001000;public static final int NAVIGATION_BAR_TRANSPARENT = 0x00008000;public static final int SYSTEM_UI_FLAG_LAYOUT_STABLE = 0x00000100;public static final int SYSTEM_UI_FLAG_LAYOUT_HIDE_...
{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);...