无法检测是否为暗模式或其他模式?

问题描述

我正在尝试检查操作系统正在使用的当前主题,无论是深色,浅色还是认。

我正在使用以下代码

int systemThemeMode = getResources().getConfiguration().uiMode &
            Configuration.UI_MODE_NIGHT_MASK;

    Toast.makeText(this,String.valueOf(systemThemeMode),Toast.LENGTH_SHORT).show();

    switch (systemThemeMode) {
        case Configuration.UI_MODE_NIGHT_YES:
            Log.i("SYstem_THEME: ","Night mode");
            break;

        case Configuration.UI_MODE_NIGHT_NO:
        case Configuration.UI_MODE_NIGHT_UNDEFINED:
            Log.i("SYstem_THEME: ","Not night");
            break;
    }

但是,无论我是否手动将设备切换为暗模式,该代码仍会返回暗模式情况(UI_MODE_NIGHT_YES)。我正在使用三星A30进行测试。

清单也进行了更新以处理更改

<activity
  android:name=".MainActivity"
  android:configChanges="uiMode" />

知道为什么会这样吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)