DCloud_App_Array
DCloud_App_Array
  • 发布:2014-07-25 21:23
  • 更新:2021-05-26 11:09
  • 阅读:144972

iOS平台设置系统状态栏(通知栏、顶部状态栏)样式背景颜色或透明

分类:HTML5+

配置系统状态栏样式

iOS平台可支持对系统状态栏样式的配置,在应用manifest.json文件的plus->distribute->apple下添加UIStatusBarStyle进行控制,默认值为"UIStatusBarStyleDefault"。

样式
UIStatusBarStyleDefault 默认样式,iOS6及以下系统状态栏为黑底白字,iOS7及以上系统用于定义系统状态栏上文字颜色为黑字(适用于浅色背景)
UIStatusBarStyleBlackOpaque 深色背景色样式,iOS6及以下系统状态栏为黑底白字,iOS7及以上系统用于定义系统状态栏上文字颜色为白色(适用于深色背景)
UIStatusBarStyleBlackTranslucent iOS6及以下系统在启动界面为灰底白字,iOS7及以上系统与UIStatusBarStyleBlackOpaque效果一样

App云端打包设置系统状态栏样式操作方式:
双击应用的manifest.json文件,切换到“代码视图”,在plus->statusbar下添加style节点:

Ctrl+S保存,并提交App云端打包

设置系统状态栏背景颜色(iOS7及以上生效)

iOS平台可支持对系统状态栏背景颜色的配置,在应用manifest.json文件的plus->statusbar下添加background进行控制:
值为字符串类型,格式为"#RRGGBB"格式,如红色为"#FF0000";默认值为白色。

App云端打包设置系统状态栏背景颜色操作方式

双击应用的manifest.json文件,切换到“代码视图”,在statusbar节点下添加background节点:

Ctrl+S保存,并提交App云端打包

运行期动态设置系统状态栏背景颜色

调用plus.navigator.setStatusBarBackground(rgb)动态修改系统状态栏背景颜色:
rgb为颜色字符串值,格式为#RRGGBB。

function setStatusbarRed(){  
        // 设置系统状态栏背景色为红色  
        plus.navigator.setStatusBarBackground("#FF0000");  
}

注:仅在iOS7.0及以上版本才支持设置系统状态栏背景色

设置状态栏透明并且页面内容通顶,参考http://ask.dcloud.net.cn/article/118

Android平台
Android平台自定义系统状态栏样式,参考状态栏大全-状态栏透明(沉浸式)、变色及全屏的区别

Android离线打包在AndroidManifest.xml中配置主Activity的皮肤(android:theme)来设置:

        <activity  
            android:name="io.dcloud.PandoraEntry"  
            android:configChanges="orientation|keyboardHidden|screenSize"  
            android:label="@string/app_name"  
            android:launchMode="singleTask"  
            android:screenOrientation="sensor"  
            android:windowSoftInputMode="adjustResize"  
            android:theme="主Activity的皮肤"  
            android:exported="true">  
            <intent-filter>  
                <action android:name="android.intent.action.MAIN"/>  
                <category android:name="android.intent.category.LAUNCHER"/>  
            </intent-filter>  
        </activity>

后续云端打包会封装常用的皮肤样式。参考:http://ask.dcloud.net.cn/docs/#http://ask.dcloud.net.cn/article/238

14 关注 分享
小杨 蔡繁荣 Snoopy HenryYong keny ___K Caven 小岳岳 suci Roko Trust 健健 2***@qq.com i***@163.com

要回复文章请先登录注册

疯狂狐狸

疯狂狐狸

ios云端打包,字体颜色变为白色,但是状态栏背景色改变不了
"StatusBarBackground": "#17191E",
"UIStatusBarStyle": "UIStatusBarStyleBlackOpaque",
2016-11-01 18:45
这个昵称真好

这个昵称真好

我想知道, 现在,安卓还是只有上面这一种方法 修改系统状态栏吗??2016年7月13日 18:03:14
2016-07-13 18:03
晓黑

晓黑

打包后 运行在真机上 才能看到效果么?
2016-05-08 11:39
眉清目秀的胖子

眉清目秀的胖子

ios设置字体颜色必须要在云端打包才能生效 ?
2016-05-04 16:50
leonzhou

leonzhou

android任务栏无法直接设置,求快快解决一下呗...
2016-04-12 17:28
ypf

ypf

setStatusBarBackground(),设置状态栏背景颜色同样是写在manifest.json代码试图里面吗?
2015-12-11 11:19
DCloud_App_Array

DCloud_App_Array (作者)

回复 keny :
Android平台的样式是由其主体决定的,暂时无法通过API动态控制
2015-11-24 12:44
keny

keny

大概什么时候能支持Android?
2015-11-19 18:34
DCloud_App_Array

DCloud_App_Array (作者)

回复 Danny :
6.6.1版本确认存在此问题,会尽快解决并更新
2015-11-04 11:38
Danny

Danny

更新了打包服务器之后,iOS客户端"UIStatusBarStyle": "UIStatusBarStyleBlackOpaque",怎么变成黑字啦啊啊啊,原来是白字的
2015-11-02 10:40