编辑:MIUI强制在我的应用程序中激活黑暗模式,因此该应用程序看起来很糟糕。
在我的应用程序的某些部分,当我将“颜色”设置为“白色”时,它将显示为白色。
如果将其设置为“灰色”,它将显示为灰色。
如果将其设置为“红色”,它将显示为红色。
但是:如果我将其设置为“黑色”,它将是“白色!”
我该如何解决这个问题?
答案 0 :(得分:8)
找到解决方案了!
将<item name="android:forceDarkAllowed">true</item>
设置为false
在App_Resources/Android/src/main/res/values/styles.xml
感谢此链接: https://medium.com/@kivind/nativescript-disabling-dark-mode-382e5dfd11bd
因此style.xml应该如下所示:
<style name="AppThemeBase" parent="Theme.AppCompat.Light.NoActionBar">
<item name="toolbarStyle">@style/NativeScriptToolbarStyle</item>
<item name="android:forceDarkAllowed">false</item>
<item name="colorPrimary">@color/ns_primary</item>
<item name="colorPrimaryDark">@color/ns_primaryDark</item>
<item name="colorAccent">@color/ns_accent</item>
</style>
答案 1 :(得分:6)
将许多不同的解决方案结合起来,我想出了这个演练
AppEntryPoint.kt
class AppEntryPoint : Application() {
override fun onCreate() {
super.onCreate()
/*in some XIAOMI devices seems to be necessary*/
AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_NO)
}
}
AndroidManifest.xml
<application
android:name=".AppEntryPoint"
...
android:theme="@style/Theme.MyMainTheme">
...
</application>
themes.xml
<style name="Theme.MyMainTheme" parent="Theme.MaterialComponents.DayNight.DarkActionBar">
...
<item name="android:forceDarkAllowed" tools:targetApi="q">false</item>
</style>
我不知道这是否是正确的解决方案,但现在它对我有用。 在某些小米设备中可能有一种奇怪的方法来管理这种行为......
希望这个答案对其他人也有用