【问题标题】:Weird behavior with navigation controller and its root view controller in iOS 7iOS 7 中导航控制器及其根视图控制器的奇怪行为
【发布时间】:2013-09-23 14:23:57
【问题描述】:

我在 iOS 7 中遇到导航控制器及其根视图控制器的奇怪行为。目标是使用滑动菜单,如 MMDrawerController (http://github.com/mutualmobile/MMDrawerController/) 或 ECSlidingViewController (http://github.com/edgecase/ECSlidingViewController)。

我的中心主视图出现了底部间隙问题(如屏幕截图所示)。在这两种情况下,我都使用“storyboard instantiateViewControllerWithIdentifier”来检索我的控制器,所以我认为问题来自这里。

导航控制器框架(中心主视图)没问题。但是这个导航控制器的根视图控制器得到了错误的帧高度......

iOS6 和 Xcode4 一切正常,iOS7 和 Xcode5 出现问题。我已经修复了所有应用程序的“扩展边缘”,只有这个导航控制器有这个问题......

经过更多调查,问题似乎是uitabbar的高度被删除了两次:

1 - ECSlidingViewController 移除 uitabbar 高度来计算自己的高度

2 - ECSlidingViewController 加载导航控制器作为中心主视图及其框架

3 - 导航控制器加载其根视图控制器

4 - 根视图控制器再次移除 uitabbar 高度以计算其高度

所以根视图控制器得到“窗口大小 - uitabbar 高度 - uitabbar 高度”。 这就是为什么uitabbar的大小有差距...

现在我需要找出这种行为的原因,以及如何摆脱它...如果您对这个问题有任何想法,请提前致谢!

【问题讨论】:

  • 你有解决办法吗?

标签: iphone ios uinavigationcontroller ios7 xcode5


【解决方案1】:

我发现只是隐藏 navigationController 工具栏就可以了...

[self.navigationController.toolbar hide];

PS:MMDrawerController 错误?

【讨论】:

    猜你喜欢
    • 2015-11-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多