0

嘿,我最近注意到 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 属性,但无济于事。

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

4

1 回答 1

0

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

然后,在这种方法中,我UINavigationController使用旧视图控制器(位于中心)创建新的rootViewController. 然后我用 this 设置类centerController实例的属性。IIViewDeckControllerUINavigationController

希望对任何人都有帮助。

于 2013-11-18T15:24:30.510 回答