iOS7 UISplitViewController状态栏

时间:2013-09-25 18:48:26

标签: ios7 uisplitviewcontroller statusbar

我正在尝试将splitview控制器添加为子视图控制器。父视图控制器是导航控制器。导航栏对于父视图控制器是隐藏的,我想将状态栏显示为iOS 6标准。我已经将splitview控制器添加为子视图控制器,因为我想从splitview控制器推送到另一个视图控制器。

我面临的问题是当我添加splitview控制器时,状态栏与内容重叠。将edgesForExtendedLayout设置为UIRectEdgeNone for masterview,detailview,parentview,splitview似乎无法正常工作。

请让我知道我可以申请的解决方案,以防止内容重叠状态栏,并以ios 6标准显示状态栏。

我尝试使用MGSplitViewController,但面临同样的问题。

感谢。

3 个答案:

答案 0 :(得分:1)

我有完全相同的问题,并且能够解决这个问题。我在根上有一个UITabBarController,在前两个选项卡的每个选项卡上都有一个不同的UISplitViewController。对于我的一些细节视图,我将它与顶部的导航栏和底部的标签栏重叠。

我一开始尝试设置edgesForExtendedLayout但没有成功,但事实证明你需要尽早设置它才能生效。你没有在你的问题中指明你在哪里设置你的财产,所以我希望这也会对你有所帮助:在{{1}中将edgesForExtendedLayout设置为UIRectEdgeNone您的UIViewController。

这是为我修复它的代码,而早先在-viewDidLoad中执行此操作的尝试完全没有效果:

-viewWillLayoutSubviews

希望这会有所帮助......

埃里克

答案 1 :(得分:0)

当你说:

  

我正在尝试将拆分视图控制器添加为子视图控制器。

你的意思是将UISplitViewController设置为rootViewController吗?如果不是这就是为什么它表现得很奇怪。

然而,UISplitViewControllers的设计并不是这样的,请参阅此答案https://stackoverflow.com/a/2642701/383603

我会使用容器视图控制器来创建自定义拆分视图控制器:https://developer.apple.com/library/ios/featuredarticles/ViewControllerPGforiPhoneOS/CreatingCustomContainerViewControllers/CreatingCustomContainerViewControllers.html

这里有很多好的链接:Container View Controller Examples

显然有点烦人不得不重新创建它,但至少你可以完全控制它的行为。

答案 2 :(得分:0)

我认为你必须使用viewcontrollers parent,而启用了导航控制器的child可以帮助你。如果没有,请尝试此tutorial。 这对我有很大的帮助,我希望它也可以帮到你。