【问题标题】:Status Bar on iOS Background ColoriOS背景颜色上的状态栏
【发布时间】:2018-04-10 23:07:48
【问题描述】:

我很难将 iOS 状态栏背景颜色设置为透明。我正在使用最新版本的科尔多瓦状态栏和离子,并将所有内容保留为默认设置,但是由于某种原因我得到了白色背景色。怎么设置移植的背景色,虽然这是默认值。

【问题讨论】:

标签: ios cordova ionic-framework cordova-plugins ionic-v1


【解决方案1】:

好的,参考之后:

该问题发生在 iOS 11 和 cordova-ios-4.5.0 中,只需在 index.html 中将 cover 值添加到 viewport-fit 即可解决:

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

【讨论】:

  • 只是来这里说的。这是 iOS 11 的新功能——我遇到了同样的问题。
【解决方案2】:

这对我有用:

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

  2. config.xml&lt;platform name='ios'&gt;标签内添加&lt;preference name="StatusBarBackgroundColor" value="#" /&gt;

  3. index.html添加&lt;meta name="viewport" content="viewport-fit=cover, initial-scale=1, maximum-scale=1, user-scalable=no, width=device-width" /&gt;

  4. 保存。

  5. 启动模拟器。

【讨论】:

    【解决方案3】:

    luckystarr 维护。插件cordova-plugin-statusbar 将帮助您实现您想做的事情。

    添加插件后,在config.xml 中添加以下首选项以获得黑色背景

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

    要更改状态栏中图标和文本的颜色,您可以使用

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

    可用的值为默认值、lightcontent、blacktranslucent、blackopaque。

    【讨论】:

    • 我都试过了,但看起来它们被完全忽略了,即使我直接从 XCode 更改设置
    【解决方案4】:

    请查看关注

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

    它对我有用。

    【讨论】:

      【解决方案5】:

      如果您正在使用状态栏插件,您还应该将其更新到最新版本(2.3.0 刚刚发布)。这个新版本的插件可以处理 iPhone X 的缺口。

      顺便说一句,问题与 cordova-ios 版本无关,它是 WebView 的新“功能”,当您使用 iOS 11 SDK 编译应用程序时(如果您使用 Xcode 8 作为它使用 SDK 10)。 viewport-fit=cover 是删除这个假状态栏的方法。

      【讨论】:

        猜你喜欢
        • 2015-06-01
        • 2016-10-16
        • 1970-01-01
        • 2020-01-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多