离子状态栏问题 IOS

Posted

技术标签:

【中文标题】离子状态栏问题 IOS【英文标题】:Ionic Status Bar Issue IOS 【发布时间】:2017-08-16 19:39:58 【问题描述】:

我正在使用状态栏插件:

https://github.com/apache/cordova-plugin-statusbar

在我的 config.xml 中有以下设置:

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

<feature name="StatusBar">
   <param name="ios-package" value="CDVStatusBar" onload="true" />
</feature>

在我的 app.js 中,我有这个:

if (window.StatusBar) 
    if (ionic.Platform.isandroid()) 
        StatusBar.backgroundColorByHexString("#2DBE60");
     else 
        StatusBar.styleLightContent();
    

它在 Android 上运行良好,但在 IOS 中,如果我将 StatusBarOverlaysWebView 设置为 true,则视图位于状态栏后面,这不是我想要的。如果我将 StatusBarOverlaysWebView 设置为 false,它可以工作,但问题是当转换到另一个时,状态栏会变黑几秒钟,然后又变白。

如何设置它,使顶部状态栏为白色,即使在 IOS 上的页面之间导航时也保持这种状态。

【问题讨论】:

【参考方案1】:

你试过同一个插件的statusBarInstace.hide()方法吗?

在一种情况下,我必须在我正在显示的页面的构造函数中的 platform.ready 函数中编写以下代码。

platform.ready().then(()=> statusbar.hide());

有时您可能需要将上述代码包装在 setTimeout 函数中以导致执行延迟。

祝你好运

【讨论】:

欢迎来到 Stack Overflow _ 您的帖子提到在 platform.ready 函数中编写“此代码”。请您将代码添加到您的帖子中。谢谢

以上是关于离子状态栏问题 IOS的主要内容,如果未能解决你的问题,请参考以下文章

离子状态栏白底白字

iPhone上的离子如何设置状态栏透明

状态栏 iOS7

iOS下状态栏和导航栏的控制问题

iOS 13后状态栏获取高度的方法

iOS 修改状态栏preferredStatusBarStyle不执行问题