当我以这种方式强制夜间模式时,我在 webview 上看到了样式问题。某些文本和图像的颜色错误。
webview.settings.javaScriptEnabled = true
webView.loadUrl("myUrl")
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) {
if (isInDarkMode()) {
webView.settings.forceDark = WebSettings.FORCE_DARK_ON
} else {
webView.settings.forceDark = WebSettings.FORCE_DARK_OFF
}
}
fun Activity.isInDarkMode(): Boolean {
return (resources.configuration.uiMode and
Configuration.UI_MODE_NIGHT_MASK) == Configuration.UI_MODE_NIGHT_YES
}
我这样做是因为当用户更改主题时,我的 webview 不会自行切换。
我使用的是 Android 10 和最新的 Chrome 版本。