代码之家  ›  专栏  ›  技术社区  ›  uzaysan

Android-系统无法将我的主题识别为暗模式

  •  0
  • uzaysan  · 技术社区  · 5 年前

    我有两个主题。一个是:

    <style name="ThemeDay" parent="Theme.AppCompat.Light.NoActionBar">
    

    另一个是:

    <style name="ThemeNight" parent="Theme.AppCompat.DayNight.NoActionBar">
    

    我以前在每一项活动中都应用了主题 super.onCreate()

    if(GenelUtil.getNightMode()){
        setTheme(R.style.ThemeNight);
    }else{
        setTheme(R.style.ThemeDay);
    }
    

    主题已应用。但该系统的行为与选定的主题不同。

    例如,当系统处于亮模式,应用程序处于暗模式时,导航栏仍为白色,对话框仍为白色等。。

    但当我打开instagram并切换到黑暗模式时,系统的行为也像在黑暗模式下一样。

    我在这里做错了什么?我该怎么解决这个问题?

    1 回复  |  直到 5 年前
        1
  •  2
  •   snachmsm    5 年前

    DayNight 主题是根据系统设置(默认情况下)或您设置/强制的(例如使用 AppCompatDelegate.setDefaultNightMode() )

    当您的系统中有灯光主题时,您将使用 白天黑夜 那么你的应用程序的主题仍然没有被覆盖,颜色将与“浅色”主题中的颜色相同

    推荐文章