DCloud_App_Array
DCloud_App_Array
  • 发布:2014-12-12 22:37
  • 更新:2024-06-13 19:43
  • 阅读:81258

iOS平台设置沉浸式状态栏显示效果

分类:HTML5+

系列文章导航:
状态栏大全-状态栏透明(沉浸式)、变色及全屏的区别
Android平台设置沉浸式状态栏显示效果
iOS平台设置沉浸式状态栏显示效果

正文:

应用可视区域到系统状态栏下透明显示效果,如下图所示:

此模式下应用占用全屏区域,而系统状态栏会拦截用户操作事件,此时需要预留出系统状态栏高度。
获取系统状态栏高度及沉浸式状态判断参考:如何动态判断沉浸式状态栏模式

HBuilder创建的应用默认不使用沉浸式状态栏样式,需要进行如下配置开启:
打开应用的manifest.json文件,切换到代码视图,在plus -> statusbar 下添加immersed节点并设置值为true。

"plus": {  
    "statusbar": {  
        "immersed": true  
    }  
}

如下图所示:

保存后提交App云端打包

注意事项:

  1. 真机运行不生效,需提交App云端打包后才生效;
  2. 此功能仅在iOS7及以上系统有效。
    3. 设置沉浸式状态栏后顶部有灰条的问题解决
    iOS11以上系统当启用沉浸式式状态栏后,webview默认会调整内容至安全区域之内,视觉效果如下图:
    如果不需要自动调整可以在meta(name="viewport")节点的content属性值中添加viewport-fit=cover

状态栏大全-状态栏透明(沉浸式)、变色及全屏的区别
iOS平台5+SDK原生环境配置方法
Android平台设置沉浸式状态栏显示效果

14 关注 分享
y7 蔡繁荣 safaring Trust 丶落叶de追求丶 程小猿 2***@qq.com bishuihanshan 马振丹 Masot typer c***@foxmail.com lazi 1***@qq.com

要回复文章请先登录注册

6***@qq.com

6***@qq.com

使用这个后在ios上设置statusbar怎么没用啊 啊 啊 啊啊 ....求解决
2017-09-26 09:24
8***@qq.com

8***@qq.com

关于沉浸式,除了不在manifest.json文件中启用,也完全可以通过更改系统状态栏背景颜色做到和沉浸式效果一样。

plus.navigator.setStatusBarBackground("red")
2017-09-23 17:42
逗逗水

逗逗水

目前显示效果是系统标题栏紧挨header内容,这个如何修改呐??
2017-09-22 09:20
逗逗水

逗逗水

回复 1***@qq.com :
最后是使用margin-top解决的吗?
2017-09-22 09:08
昵称都被用了

昵称都被用了

真坑,加上也不好使
2017-05-18 09:01
昵称都被用了

昵称都被用了

http://ask.dcloud.net.cn/question/31964 求解决
2017-05-17 17:57
3***@qq.com

3***@qq.com

回复 1***@qq.com :
怎么设置系统状态栏设置为透明??
2017-01-06 15:49
1***@qq.com

1***@qq.com

回复 木木小马 :
对啊,你现在解决了没有啊,怎么吧顶部系统状态栏设置为透明
2016-11-22 18:06
1***@qq.com

1***@qq.com

回复 DCloud_App_Array :
header 被遮挡住了,设置paddingTop还是不行啊,如何改动呢,求解,谢谢了
2016-07-14 16:42
东哥的苹果

东哥的苹果

回复 木木小马 :
我当时也被这个坑坑坏了,hbuilder到处都是坑,还需要我们联合起来,相互学习啊。
2016-03-28 20:00