Van*_*yen 6 android android-statusbar android-jetpack-compose
我正在关注developer.google的主题教程。我正在尝试将应用程序迁移到 Mat。3、修改状态栏的颜色以与背景颜色相匹配。
添加android:statusBarColor和后android:windowLightStatusBar,没有任何变化。
我注意到在应用程序加载的第一时刻,状态栏确实符合我的预期,但过了一会儿就变得错误了。
之前: https: //i.stack.imgur.com/i43cL.png
之后: https: //i.stack.imgur.com/kMwaP.png
我尝试过的:
// res/values/themes.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="Theme.Superheroes" parent="android:Theme.Material.Light.NoActionBar">
<item name="android:statusBarColor">@color/background_light</item>
<item name="android:windowLightStatusBar">true</item>
<item name="android:windowBackground">@color/background_light</item>
</style>
</resources>
Run Code Online (Sandbox Code Playgroud)
// res/values-night/themes.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="Theme.Superheroes" parent="android:Theme.Material.NoActionBar">
<item name="android:statusBarColor">@color/background_dark</item>
<item name="android:windowLightStatusBar">false</item>
<item name="android:windowBackground">@color/background_dark</item>
</style>
</resources>
Run Code Online (Sandbox Code Playgroud)
Van*_*yen 10
另一种在不添加依赖项的情况下更改它的方法是ui.theme/Theme.kt@2801938 提到的:
@Composable
fun YourAppTheme(darkTheme...) {
...
val view = LocalView.current
if (!view.isInEditMode) {
SideEffect {
val window = (view.context as Activity).window
window.statusBarColor = colorScheme.primary.toArgb()
WindowCompat.getInsetsController(window, view).isAppearanceLightStatusBars = darkTheme
}
}
...
}
Run Code Online (Sandbox Code Playgroud)
[已弃用]
在 Jetpack Compose 中,最简单的方法是使用 Accompanist System UI Controller。
将其添加到您的依赖项中:implementation "com.google.accompanist:accompanist-systemuicontroller:0.27.0"
然后,在您的 MainActivity 中:
setContent {
MyTheme {
Surface(
modifier = Modifier.fillMaxSize(),
color = MaterialTheme.colorScheme.background
) {
val systemUiController = rememberSystemUiController()
SideEffect {
systemUiController.setStatusBarColor(
color = Color(0xff655D8A),
)
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6068 次 |
| 最近记录: |