首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >MIUI 11/12主题切换结果为LifeCycleException、ClassCastException

MIUI 11/12主题切换结果为LifeCycleException、ClassCastException
EN

Stack Overflow用户
提问于 2020-10-28 09:21:11
回答 2查看 760关注 0票数 2

由于MIUI11/12使用自己的自定义暗模式实现,因此使用以下代码会导致ClassCastException和活动生命周期异常,因为DefaultNightMode和LocalNightMode始终未指定,即-100而不是0或1。

如果有人已经为小米设备构建了一个专门针对MIUI 11/12的解决方案,请在这个问题上帮助我。

使用的代码:

代码语言:javascript
复制
AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_NO);
this.recreate();

导致的错误:

代码语言:javascript
复制
2020-10-25 07:04:43.626 9167-9167/com.xxxx.xxxxxx E/ActivityInjector: get life cycle exception
    java.lang.ClassCastException: android.os.BinderProxy cannot be cast to android.app.servertransaction.ClientTransaction
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-10-31 18:56:25

我自己解决的。摆弄了一个星期后,我做了。

下面是如何实现的:

--而不是为每个活动设置android:forceDarkAllowed="false“。

--只需转到values.xml并将其放入您的AppTheme中

代码语言:javascript
复制
        <item name="android:forceDarkAllowed">false</item>

它将要求您创建一个valuesv29.xml。创建它,并从所有活动中删除forceDarkAllowed="false“。

欢迎。:)

票数 2
EN

Stack Overflow用户

发布于 2021-07-14 11:06:47

同样在jetpack compose中,只需将这一行添加到theme.xml

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

有了这个目标api,我就能很好地工作

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64565156

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档