如何禁用基于android系统设置的昼夜主题自动更改



到目前为止,我从谷歌了解到,你必须使用Theme.Appcompat.Daynight或Material Daynight主题来使你的应用程序支持黑暗模式。您需要在夜间值目录中使用不同的样式.xml。我不愿意让我的应用程序支持黑暗主题。但当我将安卓系统主题(从通知面板(更改为暗时,我的应用程序就会变暗。我使用Theme.Appcompat.Light作为基本主题,没有为我的应用程序支持暗模式做任何事情,但我的应用仍然变暗。我是第一次使用cardview,不知道这是否可能是原因,因为我对android编程很陌生。我们将非常欢迎你的小小帮助。请查看此处的屏幕截图:

系统暗模式关闭

上的系统暗模式

您可以在所有应用程序中使用它

class AppController: Application() {
override fun onCreate() {
super.onCreate()
AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_NO)
}
}

在android 10中,android forse dark to app变态,将以下内容添加到您的主题中:

<item name="android:forceDarkAllowed" tools:targetApi="q">false</item>

在调用setContentView:之前,在MainActivity的onCreate方法中添加此行

AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_NO)

最新更新