这可能看起来有点不对劲,但请阅读一次!
如果我有一个活动说主活动,它的布局 ID 说 R.id.main_activity。要将此布局用作当前窗口的主布局,我们使用 setContentView(R.id.main_activity),但此视图不包括应用程序的标题栏或系统的状态栏。所以我的问题是:标题栏和状态栏是否有视图或布局 ID,如果是,那是什么?如果不是,请检查:我使用以下代码将我的应用程序置于全屏模式:
fun fullScreen(view: View, window: Window) {
WindowCompat.setDecorFitsSystemWindows(window, false)
WindowInsetsControllerCompat(window, view).let { controller ->
controller.isAppearanceLightStatusBars
controller.hide(WindowInsetsCompat.Type.systemBars())
WindowInsetsControllerCompat.BEHAVIOR_SHOW_TRANSIENT_BARS_BY_SWIPE.also { controller.systemBarsBehavior = it }
}
}
然后我在任何需要的地方调用它:
//puts window in fullscreen
override fun onWindowFocusChanged(hasFocus: Boolean) {
super.onWindowFocusChanged(hasFocus)
if (hasFocus) UtilityMethods(this).fullScreen(form.root, window)
}
它工作正常,但问题是当应用程序处于全屏模式时,它不使用系统的状态栏(它只是使状态栏变黑)。那么,将应用程序置于完全全屏模式是否有更好的解决方法?