Phonegap:动态显示和隐藏状态栏(iOS Xcode)

Posted

技术标签:

【中文标题】Phonegap:动态显示和隐藏状态栏(iOS Xcode)【英文标题】:Phonegap: Dynamically show & hide status bar (iOS Xcode) 【发布时间】:2012-10-29 04:50:43 【问题描述】:

我刚刚从 AppStore 下载了 Astrid 待办事项列表,并发现了一些对我来说非常酷和新的东西:一个动态状态栏,它会根据用户的操作显示和隐藏。

很长一段时间以来,我一直在与自己进行一场内部斗争,试图决定是否在我的某些应用中显示状态栏。这肯定会解决我的矛盾心理。

更准确地说,它的作用是始终显示状态栏,除非它正在同步。发生这种情况时,该栏会巧妙地淡出,并显示加载微调器以及用户反馈。完成后,状态栏会再次淡出。提供用户反馈的非常好和整洁的方式。

有人知道怎么做吗?在它上面放置一个透明层,它的不透明度降低到零然后再返回可能是不可能的,因为我假设状态栏将始终保持更大的 z-index(用 CSS 术语来说),但是如何?我的大多数应用程序都使用 phonegap、cordova,因此与 PG 平台兼容的解决方案更可取。

我最初想在这篇文章中添加打印屏幕以进一步阐明我的意思,但认为只有一个视频就足以做到这一点,所以我想如果你不确定效果,最好自己下载应用程序我'我试图在这里描绘。如果您对此感到困扰,只需从应用商店安装 Astrid 待办事项列表应用并下拉刷新即可。

【问题讨论】:

【参考方案1】:

您可以使用UIApplication 类动态显示/隐藏状态栏。

来自UIApplication Class Reference:

setStatusBarHidden:withAnimation:

隐藏或显示状态栏,可选择动画过渡。

- (void)setStatusBarHidden:(BOOL)hidden withAnimation:(UIStatusBarAnimation)animation

因此您可以随意打开/关闭它(并按照您最初在上面的建议淡入任何您想要的内容),例如:

[[UIApplication sharedApplication] setStatusBarHidden:NO withAnimation:UIStatusBarAnimationFade];

【讨论】:

仍然需要知道是否有任何方法可以使用Phonegap来完成 是的,绝对 - 您将利用 phone gap 的插件系统:docs.phonegap.com/en/2.0.0/…

以上是关于Phonegap:动态显示和隐藏状态栏(iOS Xcode)的主要内容,如果未能解决你的问题,请参考以下文章

从PhoneGap Camera API返回时如何隐藏iOS7状态栏?

修复了 PhoneGap 中 iOS 状态栏重叠但状态栏不显示的问题

IOS - Firebase 动态链接打开应用但在状态栏上显示文本按钮

PhoneGap 2.7 在状态栏中显示活动指示器

如何在 iOS 8 上的 Cordova / PhoneGap 应用程序中隐藏键盘表单附件栏? [复制]

android 动态控制状态栏显示和隐藏的方法实例