白天主题始终显示夜间主题



我创建了一个新项目,该项目仅包含一个使用新日/夜主题的非常简单的活动。即使在应用程序类的静态块中调用AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_NO);并在活动中调用getDelegate().setLocalNightMode(AppCompatDelegate.MODE_NIGHT_NO);,活动也会显示夜间主题。我已经在活动及其报告 UI 模式为夜间时设置了一个断点,所以我不知道为什么它拒绝显示白天主题。

我正在针对 API 23 进行编译/针对,并在运行棉花糖的 Nexus 5 上进行测试

请参阅 https://code.google.com/p/android/issues/detail?id=201910。这将在 23.2.1 错误修复版本中修复。

现在,Activity.onCreate()您可以通过调用

getTheme().applyStyle(R.style.Theme_AppCompat_<whatever>, true);

其中<whatever>是您在该活动中使用的主题。更新到 23.2.1 后,将不需要此解决方法。

您还需要调用 yourAppCompatActivity.getDelegate().applyDayNight();

最新更新