在升级至 Android Gradle 插件版本 7.2.2
后,Jetpack Compose 项目的默认 Theme.kt
文件会出现警告:
ViewCompat.getWindowInsetsController is deprecated
这个警告来自于项目脚手架中提供的默认实现:
/* snip */
val view = LocalView.current
if (!view.isInEditMode) {
SideEffect {
(view.context as Activity).window.statusBarColor = colorScheme.primary.toArgb()
ViewCompat.getWindowInsetsController(view)?.isAppearanceLightStatusBars = darkTheme // <--- This triggers a deprecation warning
}
}
文档建议使用WindowCompat.getInsetsController
代替,但该函数需要访问view
和window
。是否有一种简单的方法来解决此警告而不会忽略它?