uni-app 页面设置setStatusBarStyle后会被还原
uni-app 页面设置setStatusBarStyle后会被还原
详细问题描述
(DCloud产品不会有明显的bug,所以你遇到的问题大都是在特定环境下才能重现的问题,请仔细描述你的环境和重现方式,否则DCloud很难排查解决你的问题)
plus.navigator.setStatusBarStyle('UIStatusBarStyleBlackOpaque')
我直接建官网的实例 然后就在 设置了一下 结果运行也是会变白色一下 然后又变回黑色
onShow: function() {
console.log('App Show')
plus.navigator.setStatusBarStyle('UIStatusBarStyleBlackOpaque')
},
重现步骤
[步骤]
[结果]
[期望]
[如果语言难以表述清晰,拍一个视频或截图,有图有真相]
IDE运行环境说明 | uni-app运行环境说明 | App运行环境说明 |
---|---|---|
[HBuilder 或 HBuilderX] | [运行端是h5或app或某个小程序] | [Android版本号] [iOS版本号] [手机型号] [模拟器型号] |
附件
[IDE问题请提供HBuilderX运行日志。菜单帮助-查看运行日志,点右键打开文件所在目录,将log文件压缩成zip包上传]
[App问题请提供可重现问题的代码片段,你补充的细一点,问题就解决的快一点]
[App安装包或H5地址]
[可重现代码片段]
联系方式
[QQ]
更多关于uni-app 页面设置setStatusBarStyle后会被还原的实战教程也可以访问 https://www.itying.com/category-93-b0.html
onShow时,页面还未渲染完毕,只是刚开始做进入动画。
你可以在onReady里调整,这个是页面第一次渲染完毕
更多关于uni-app 页面设置setStatusBarStyle后会被还原的实战教程也可以访问 https://www.itying.com/category-93-b0.html
在onReady里面执行也还是一样的 先变一下 然后变回
回复 1***@qq.com: 我也遇到这个问题了,切换tab页再回来就被还原了,你后来有其他的解决办法了吗
解决了吗?各位兄弟,我放在onReady里面,第一次有效果,切换了一下tabbar,就还原了
请问解决了吗,现在还有此问题
我现在的情况是 :
如果是tab页的话,切换会还原,那么加在这里
onTabItemTap(){
/ #ifdef APP-PLUS /
plus.navigator.setStatusBarStyle(this.them === “dark” ?“light”:“dark”);
// #endif
}
搭配onready使用
这是uni-app中常见的状态栏样式重置问题。在App端,系统会在页面切换时自动重置状态栏样式。建议在onShow和onReady生命周期中都设置状态栏样式:
onReady() {
plus.navigator.setStatusBarStyle('UIStatusBarStyleBlackOpaque')
},
onShow() {
plus.navigator.setStatusBarStyle('UIStatusBarStyleBlackOpaque')
}
如果问题依旧,可能是原生层配置冲突导致的。检查manifest.json中是否配置了透明状态栏:
"app-plus": {
"statusbar": {
"style": "dark"
}
}
也可以尝试在pages.json中对特定页面配置:
{
"path": "pages/index/index",
"style": {
"navigationBarTextStyle": "black"
}
}