kotlin 隐藏DrawerLayout系统栏但保留布局

ybzsozfc  于 2022-11-25  发布在  Kotlin
关注(0)|答案(2)|浏览(113)

我不明白为什么系统栏仍然保持横向,虽然我已经使用

WindowCompat.setDecorFitsSystemWindows(window, true)
WindowInsetsControllerCompat(window, nView).let { controller ->
    controller.hide(WindowInsetsCompat.Type.systemBars())
    controller.systemBarsBehavior = WindowInsetsControllerCompat.BEHAVIOR_SHOW_TRANSIENT_BARS_BY_SWIPE
}

但它似乎只是隐藏了“图标

任何想法都是赞赏

稍后编辑:做了一个测试,实现的是从活动布局androidx.drawerlayout.widget.DrawerLayout

vsnjm48y

vsnjm48y1#

已设置安卓系统:fitsSystemWindows=“真”
删除这一行后,没有系统栏的全屏工作正常

omhiaaxx

omhiaaxx2#

你可以试着将DecorFitsSystemWindows(window,false)设置为false。这对我的应用程序来说效果很好。

private fun hideSystemUi() {
        WindowCompat.setDecorFitsSystemWindows(window, false)
        WindowInsetsControllerCompat(window, binding.videoView).let { controller ->
            controller.hide(WindowInsetsCompat.Type.systemBars())
            controller.systemBarsBehavior = WindowInsetsControllerCompat.BEHAVIOR_SHOW_TRANSIENT_BARS_BY_SWIPE
        }
    }

相关问题