Android setSystemUiVisibility() flag详解

本文详细解析了Android中实现全屏和沉浸式用户体验的多种方式,包括使用View.SYSTEM_UI_FLAG_FULLSCREEN、View.SYSTEM_UI_FLAG_HIDE_NAVIGATION、View.SYSTEM_UI_FLAG_IMMERSIVE等标志位来隐藏状态栏和导航栏,以及如何结合View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN和View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION让应用布局适应不同屏幕情况。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • View.SYSTEM_UI_FLAG_FULLSCREEN
    全屏模式,占据整个屏幕,隐藏状态栏等界面,不过导航栏不会隐藏。如果用户进行操作,隐藏的系统界面会立马出现并清除该flag。

  • View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
    隐藏导航栏,布局会往下移。如果用户进行操作,导航栏会立马出现并清除该flag。

  • View.SYSTEM_UI_FLAG_IMMERSIVE
    仅能和SYSTEM_UI_FLAG_HIDE_NAVIGATION共同使用,使用户操作不再显示导航栏(但是仍能通过从底部往上滑调出导航栏并清除flag)。单独使用无效。

  • View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY
    仅能和SYSTEM_UI_FLAG_FULLSCREEN或SYSTEM_UI_FLAG_HIDE_NAVIGATION共同使用。用户操作不再清除flag,从边缘滑入可以调出状态栏和导航栏,并且过几秒之后自动隐藏。单独使用无效。

  • View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN

  • View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
    不隐藏状态栏和导航栏,但是app会占满屏幕,但是会被状态栏/导航栏遮盖住。

  • View.SYSTEM_UI_FLAG_LAYOUT_STABLE
    当同时设置了SYSTEM_UI_FLAG_FULLSCREEN 和SYSTEM_UI_FLAG_LAYOUT_STABLE之后,效果相当于SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN

  • View.SYSTEM_UI_FLAG_LIGHT_NAVIGATION_BAR;

  • View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR
    状态栏和导航栏变为亮色模式,白底黑字

  • View.SYSTEM_UI_FLAG_VISIBLE
    用户表示状态栏可见,默认flag

  • View.SYSTEM_UI_LAYOUT_FLAGS
    效果相当于 SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION | SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值