【问题标题】:Set status bar color using Chrome Mobile Apps使用 Chrome 移动应用程序设置状态栏颜色
【发布时间】:2014-02-12 00:27:07
【问题描述】:

我想将状态栏设置为块色或透明,就像在 Google Now 应用中一样。

这可能吗?如果可以,怎么做?

【问题讨论】:

    标签: google-chrome-app


    【解决方案1】:

    Chrome Apps on Mobile 利用Apache Cordova,我们决定默认包含cordova statusbar plugin

    我们默认包含以下cordova状态栏插件<preference>

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

    这基本上意味着您的应用内容不会覆盖状态栏(内容被下推,就像在 iOS 6 上一样),并且默认颜色为黑色。这是 chrome 应用程序的一个很好的默认设置,但不是 iOS 7 外观的理想设计。

    幸运的是,您可以在项目根目录的 config.xml 文件中轻松更改这些值。对于您的具体要求,我会将StatusBarOverlaysWebView 更改为true 并将颜色更改为您的应用背景颜色,然后记得运行cca prepare。您还需要调整应用程序的外观和感觉,以免干扰状态栏文本(例如,可能通过将 padding-top 添加到 html 元素)。

    config.xml 具有您可以更改的其他首选项(尽管您不应该更改其他标签,因为它们是自动更新的)。您可以通过查看每个插件的README.md 文件的plugins/ 文件夹来了解各种&lt;preference&gt;,该文件通常可以很好地描述自身,或者通过在线研究cordova 应用程序开发。

    【讨论】:

    • 有没有办法在 Android 上做到这一点?这个插件似乎暗示该解决方案仅适用于 iOS?
    • 此插件和这些设置仅适用于 iOS7。但是,还有另一个首选项&lt;preference name="fullscreen" value="true" /&gt;,您可以将其切换为Android 以完全显示/隐藏状态栏。不幸的是,iOS7 使用的偏好名称与 Android 不同,但全屏在该平台上略有不同。
    • 有没有办法在 manifest.mobile.json 中指定这些首选项,以便像其他参数一样在 config.xml 中初始化它们?
    • @infomofo 不,你不能,但我已经提交了github.com/MobileChromeApps/mobile-chrome-apps/issues/393 以讨论如何最好地管理设置首选项。
    猜你喜欢
    • 1970-01-01
    • 2021-12-02
    • 2013-11-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-06
    • 1970-01-01
    相关资源
    最近更新 更多