【发布时间】:2021-05-03 16:03:51
【问题描述】:
在我的 Android 应用中,我想隐藏状态栏,并且只隐藏状态栏。
这是我在我的活动中所做的,其行为符合预期:
// method #1:
window.decorView.systemUiVisibility = (View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY
or View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
or View.SYSTEM_UI_FLAG_FULLSCREEN)
问题是:它在 API 30 (Android 11) 中已被弃用。
这是我为 API 30 尝试过的:
// method #2:
window.insetsController?.hide(WindowInsets.Type.statusBars())
它按预期隐藏了状态栏,但行为不同:当我从屏幕顶部向下滚动以使状态栏出现时,不仅出现了一些奇怪的故障,更重要的是,状态栏没有'不要在几秒钟后隐藏,就像之前的方法允许的那样。
那么如何隐藏 API 30+ 的状态栏,让它在几秒钟后自动隐藏?
谢谢。
【问题讨论】:
-
你试过this吗?
-
太棒了,它有效,谢谢!
标签: android