Status Bar on iOS Background Color

给你一囗甜甜゛ 提交于 2019-12-03 09:32:24

问题


I’m having a hard time setting the iOS status bar background color to transparent. I’m using the latest version of cordova statusbar and ionic, and leaving everything to their default setting, however i’m getting a white background color for some reason. How can i set the background color to transplant, i though this is the default value anyhow.


回答1:


Okay so after referring to:

  • https://issues.apache.org/jira/browse/CB-12886 and
  • https://issues.apache.org/jira/browse/CB-12890

The issue occurs in iOS 11, and cordova-ios-4.5.0 and is simply solved by adding the cover value to viewport-fit as follows in your index.html:

   <meta name="viewport" content="viewport-fit=cover, initial-scale=1, maximum-scale=1, user-scalable=no, width=device-width" />



回答2:


As maintained by luckystarr. Plugin cordova-plugin-statusbar will help you achieve what you want to do.

After adding plugin add following preference in config.xml to get black background

<preference name="StatusBarBackgroundColor" value="#000000" />

To change the color of icons and text in status bar you can use

<preference name="StatusBarStyle" value="lightcontent" />

Available values are default, lightcontent, blacktranslucent, blackopaque.




回答3:


This worked for me:

  1. Run cordova plugin add https://github.com/apache/cordova-plugin-statusbar.git

  2. config.xml Add <preference name="StatusBarBackgroundColor" value="#" /> inside <platform name='ios'> tag

  3. index.html Add <meta name="viewport" content="viewport-fit=cover, initial-scale=1, maximum-scale=1, user-scalable=no, width=device-width" />

  4. Save.

  5. Launch the simulator.




回答4:


If you are using statusbar plugin, you should also update it to latest version (2.3.0 has just been released). This new version of the plugin handles the iPhone X notch.

BTW, the problem has nothing to do with the cordova-ios version, it's a new "feature" of the WebView when you compile the apps with iOS 11 SDK (it won't appear if you use Xcode 8 as it uses SDK 10). viewport-fit=cover is the way to go for removing this fake statusbar.




回答5:


Please check Following

window.cordova.plugins.StatusBar.overlaysWebView(false);

It worked for me.



来源:https://stackoverflow.com/questions/47007306/status-bar-on-ios-background-color

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!