我很难将iOS状态栏背景颜色设置为透明。我正在使用最新版本的cordova状态栏和离子,并将所有内容保留为默认设置,但由于某种原因我得到了白色背景颜色。我怎样才能设置移植的背景颜色,不管怎样,这是默认值。
答案 0 :(得分:15)
好的,所以参考:
问题出现在iOS 11和cordova-ios-4.5.0中,只需通过在index.html中将封面值添加到viewport-fit来解决:
<meta name="viewport" content="viewport-fit=cover, initial-scale=1, maximum-scale=1, user-scalable=no, width=device-width" />
答案 1 :(得分:2)
由luckystarr维护。插件cordova-plugin-statusbar将帮助您实现您想要的目标。
添加插件后,在config.xml
中添加以下首选项以获取黑色背景
<preference name="StatusBarBackgroundColor" value="#000000" />
要更改状态栏中图标和文字的颜色,您可以使用
<preference name="StatusBarStyle" value="lightcontent" />
可用值为default,lightcontent,blacktranslucent,blackopaque。
答案 2 :(得分:1)
这对我有用:
运行cordova plugin add https://github.com/apache/cordova-plugin-statusbar.git
config.xml 在<preference name="StatusBarBackgroundColor" value="#" />
标签内添加<platform name='ios'>
index.html 添加<meta name="viewport" content="viewport-fit=cover, initial-scale=1, maximum-scale=1, user-scalable=no, width=device-width" />
保存。
启动模拟器。
答案 3 :(得分:0)
如果您使用的是状态栏插件,则还应将其更新为最新版本(2.3.0刚刚发布)。这个新版本的插件处理iPhone X缺口。
BTW,这个问题与cordova-ios版本无关,当你使用iOS 11 SDK编译应用程序时,它是WebView
的一个新“功能”(如果使用Xcode则不会出现) 8,因为它使用SDK 10)。 viewport-fit=cover
是删除此虚假状态栏的方法。
答案 4 :(得分:0)
请检查以下
window.cordova.plugins.StatusBar.overlaysWebView(false);
对我有用。