[英]Customize Full-Screen Behaviour
根據 android 文檔,我們可以通過在onCreate
方法中添加以下代碼塊(在setContent{...}
中,特別是如果您使用的是 Compose),使活動 go 全屏顯示
val windowInsetsController = ViewCompat.getWindowInsetsController(window.decorView)
windowInsetsController.systemBarsBehavior =
WindowInsetsControllerCompat.BEHAVIOR_SHOW_TRANSIENT_BARS_BY_SWIPE
windowInsetsController.hide(WindowInsetsCompat.Type.systemBars())
然而,這似乎只是隱藏了狀態欄上顯示的信息,僅用黑色條紋代替。
現在,我的問題是 - 我們如何修改該條紋的顏色,以便應用程序的 UI 似乎延伸到整個顯示屏?
我不知道從哪里開始,但我聽說伴奏者可能有與此相關的東西,但我認為最好在這里發布這個問題,這樣如果有人已經知道解決辦法,他們可能會分享,因為這將有助於社區。
除此之外,不涉及伴奏的解決方案也是受歡迎的,甚至可能是首選的。
作為參考,這是截至目前的 output
注意到頂部的黑條了嗎? 這就是目標。
在你可以理解的結果后將其復制並粘貼到 onCreate 方法中
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
val window: Window = window
window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS)
window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS)
val decorView: View = window.getDecorView()
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
decorView.systemUiVisibility =
View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN or View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR
} else {
decorView.systemUiVisibility = View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
}
window.setStatusBarColor(Color.TRANSPARENT)
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.