IIViewDeck & 双高状态栏

Posted

技术标签:

【中文标题】IIViewDeck & 双高状态栏【英文标题】:IIViewDeck & Double Height Status Bar 【发布时间】:2013-08-13 08:37:42 【问题描述】:

嘿,我最近注意到 ios 的 IIViewDeck 中有一个错误 (https://github.com/Inferis/ViewDeck)

如果您在显示通话状态栏时使用 View Deck 或示例应用启动应用,则一旦状态栏恢复到正常高度,中心视图就不会调整大小。其他人在 GitHub 上将其记录为问题 (https://github.com/Inferis/ViewDeck/issues/402)

我试过监听应用委托回调application:didChangeStatusBarFrame:,然后调用self.centerView.frame = self.centerViewBounds;,但这没有用。

当我记录这段代码时,我看到显然已经调整了自己的大小

Original Frame: 0, 0, 320, 548
New Frame: 0, 0, 320, 548
After Set: 0, 0, 320, 548
*********************
Original Frame: 0, 0, 320, 528
New Frame: 0, 0, 320, 528
After Set: 0, 0, 320, 528
*********************

我也尝试为各种视图设置 autoResize 属性,但无济于事。

我真的很想修复这个错误,非常感谢任何帮助。这是一个很多人使用的库,如果能帮助维护它会很好。我一定会将解决方案传递给回购所有者

【问题讨论】:

【参考方案1】:

我也遇到过这个问题。我的决定是:将观察者添加到通知UIApplicationWillChangeStatusBarFrameNotification 并将任何方法设置为它的选择器。

然后,在此方法中,我使用旧视图控制器(位于中心)作为 rootViewController 创建新的 UINavigationController。然后我用这个UINavigationController 设置IIViewDeckControllerclass 实例的属性centerController

希望对任何人都有帮助。

【讨论】:

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

iOS:脉冲红色双高状态栏

Android 透明状态栏&着色状态栏

决策树状态栏&相关数值栏

Meteor App & iOS 状态栏

[RK3568 Android11] 配置沉浸式导航栏&状态栏

Android系统定制-SystemUI-下拉状态栏快捷设置新增选项(自动亮度&静音)