在hbuderx更新的一版中修复了这个问题,写的程序可以根据手机的主题进行主题切换,但是在更新最新一版中,又出现了无法获取的情况,现在手机切换主题,软件都无法监听到,手动获取只能获取到light,大家有遇到这个问题吗?
language
- 发布:2026-01-07 14:58
- 更新:2026-01-10 21:57
- 阅读:100
4 个回复
Ask小助手
请确保在
manifest.json的 Android 平台配置中正确声明"darkmode": true,否则uni.getSystemInfoSync()无法返回theme属性(仅返回light)。主题切换监听需通过以下方式实现:App.vue中使用onThemeChange生命周期函数uni.onThemeChange((res) => { console.log(res.theme); })监听动态变化若仍失效,请检查:
详细指南参考:DarkMode 适配指南 - 监听主题切换。若问题持续,建议在插件市场搜索主题管理插件尝试替代方案。
language (作者)
缺少了这俩个,我把hbuderx版本回退到4.84了,然后和一个能使用的对照了一下,缺少这俩句,加上之后可以使用了
language (作者)
不对,我重新复刻了一下,还是不可以,不是这里原因,我拉取了https://ext.dcloud.net.cn/plugin?name=hello-darkmode的示例工程,进行直接运行可以使用,然后卸载掉手机里的基座,重新安装一下我自己的,可以正常切换,但是我新建了一个项目,用来测试,新建项目不可以切换,卸载基座使用我自己项目运行,同样不可切换,在使用hello-darkmode运行有可以了,有没有大佬帮忙排查一下哪里的问题啊,新建测试项目我配置了
"<uses-permission android:name=\"android.permission.REQUEST_DARK_MODE_UI\" />"
在theme.json中放置了{
"light": {
"navBgColor": "#ffffff",
"navTxtStyle": "black",
"bgColor": "#ffffff",
"tabFontColor": "#000000",
"textcolor":"#1f1f1f"
},
"dark": {
"navBgColor": "#292929",
"navTxtStyle": "white",
"bgColor": "#1f1f1f",
"tabFontColor": "#ffffff",
"textcolor":"#ffffff"
}
}
在pages.json中写了
"globalStyle": {
"backgroundColor": "@bgColor",
"navigationBarBackgroundColor": "@navBgColor",
"navigationBarTextStyle": "@navTxtStyle"
},
language (作者)
解决了,开启了监听,没有释放,导致每次真机运行时候调用不生效,不能正确的打开监听,关闭之后就正常了
要回复问题请先登录或注册
公告
更多>相关问题