// theme.json文件内容
{
"light": {
"navBgColor": "#f8f8f8",
"navTextStyle": "black",
"bgColor": "#f8f8f8"
},
"dark": {
"navBgColor": "#141414",
"navTextStyle": "white",
"bgColor": "#141414"
}
}
- 发布:2022-11-15 20:17
- 更新:2022-11-22 11:26
- 阅读:1785
产品分类: uniapp/App
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: Windows11
HBuilderX类型: Alpha
HBuilderX版本号: 3.6.9
手机系统: Android
手机系统版本号: Android 12
手机厂商: 华为
手机机型: 华为荣耀8x,小米,oppo
页面类型: vue
vue版本: vue3
打包方式: 云端
项目创建方式: HBuilderX
示例代码:
操作步骤:
根据上传的附件测试工程项目进行android自定义基座后进行深色浅色切换测试,测试工程项目是根据官网的DarkMode 适配指南进行配置的。
根据上传的附件测试工程项目进行android自定义基座后进行深色浅色切换测试,测试工程项目是根据官网的DarkMode 适配指南进行配置的。
预期结果:
与ios端、微信小程序一样,正常深色浅色切换。
与ios端、微信小程序一样,正常深色浅色切换。
实际结果:
系统进行深色浅色模式切换,android应用内没有进行深色浅色切换。uni.onThemeChange和onThemeChange监听无效。深色适配后深色模式系统状态栏深色模式下一直是黑色的,theme.json中配置的是白色。
系统进行深色浅色模式切换,android应用内没有进行深色浅色切换。uni.onThemeChange和onThemeChange监听无效。深色适配后深色模式系统状态栏深色模式下一直是黑色的,theme.json中配置的是白色。
bug描述:
根据DarkMode 适配指南进行测试工程问题说明:
1、android端深色适配后uni.onThemeChange和onThemeChange应用生命周期监听不到。
2、系统深色、浅色切换后,回到android应用内并没有进行深色、浅色自动切换,需要人为的关闭应用再次打开应用后才有效果。(ios、微信小程序、h5是系统深浅色切换后回到应用内是跟着自动切换深浅色模式)。
3、android适配深色模式后,深色模式下系统状态栏异常。深色模式下系统状态栏配置了白色,但是一直是黑色的。下方代码示例中有theme.json的适配代码。
4、建议android的在深色模式下下拉刷新也可以进行适配。
5、附件中上传了一张华为、小米、oppo深色模式下测试工程项目的示例截图,状态栏异常。
6、只测试了华为鸿蒙、oppo、小米品牌手机,其他andriod手机品牌未测试。
最佳回复
你是手动切换吗?目前android只支持 auto 来适配深色模式,不支持手动设置,请设置为 auto 后切换系统 深色/浅色
查看效果
-
回复 邓琪昌: 使用 小米8 并没有复现你说的问题,切换时都正常。你试试调用一下
plus.setUIStyle('auto')
然后再切换系统的深浅色模式试试2022-11-16 15:46
-
邓琪昌 (作者)
调用了plus.nativeUI.setUIStyle("auto")后再切换系统的深浅色是正常的了,uni.onThemeChange也可以监听到了。但是系统状态栏还是存在问题,华为和oppo系统切换深色,系统状态栏一直是黑色的,theme.json配置的是白色没有生效。小米的系统状态栏是正常的。
2022-11-16 17:00
-
邓琪昌 (作者)
华为和oppo手机就如附件中上传的示例图一样,系统状态栏一直是黑色的,没有切换成白色。小米手机系统状态栏是正常的。麻烦老哥使用华为或者oppo手机测试即可复现问题。
2022-11-16 17:02
邓琪昌 (作者)
HBuilder X- alpha 3.6.9不就是现在的版本吗?
2022-11-21 20:02
DCloud_UNI_LXH
回复 邓琪昌: alpha 3.6.10 已修复,可以升级试试看
2022-11-22 10:50