【发布时间】:2021-12-12 11:07:57
【问题描述】:
我目前可以在我的基本活动中使用以下内容将状态栏 文本 颜色从浅色更新为深色:
private fun toggleStatusBarTextColor(light: Boolean) {
// clear any existing flags
window.decorView.systemUiVisibility = View.SYSTEM_UI_FLAG_VISIBLE;
if(light) {
window.decorView.systemUiVisibility = (View.SYSTEM_UI_FLAG_LAYOUT_STABLE or View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN)
} else {
window.decorView.systemUiVisibility = (View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN or View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR)
}
}
systemUiVisibility 现在在 API 30 上显示为已弃用,尽管已弃用的方法暂时仍会起作用,但我更愿意用更新的方法替换它们来完成此操作。我已经读到我们现在应该使用 WindowInsetsController 函数,但不清楚如何从文档中完成此操作。有人能指出我正确的方向吗?
【问题讨论】:
标签: java android kotlin android-theme android-statusbar