手机系统是日间模式, app 设置为黑暗模式, app 启动时的背景图片使用了日间模式的资源图片。如何设置让他可以加载和 app 主题符合的夜间模式的资源图片。

查看 53|回复 2
作者:Danmen123   
我的应用中同时支持日间模式和黑暗模式,同时用户也可以选择强制 app 为黑暗模式,有一个问题就是:
启动 app 的时候,会显示通过 theme 的 android:windowBackground 属性中指向的图片资源,该资源是获取`value`还是`values-night`下的资源取决于手机系统当前是否为黑暗模式,而非 app 内是否为黑暗模式。
我的需求:
手机系统为日间模式,app 系统内为黑暗模式,我想启动页加载的是`value-night`中的主题资源,这样可以跟我 app 在显示启动页直到 app 加载完成显示主界面的视觉效果统一起来(都是深色系),用户体验会更好一些。
尝试过的解决方案:
在 Application `onCreate`方法中使用了`AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_YES);`来设置应用的主题模式,但是并不会影响启动页的加载,失败了。
请教各位大佬,有什么解决方案吗?

App, 模式, 黑暗, 资源

TArysiyehua   
高版本的 android 页是系统自带的,如果是那个页面的话要改就比较麻烦,如果是自己的启动也,在 attach 的时候用代码修改 context 与主题即可
Danmen123
OP
  
@TArysiyehua 是 MainActivity 的 `onAttachedToWindow` 方法吗? 怎么修改 context 的主题呢?不是很理解,求大佬指教
您需要登录后才可以回帖 登录 | 立即注册

返回顶部