UITabBarController不显示其内容的全部大小(UIViewController)
我的问题是,我无法摆脱UITabBarController
底部的橙色背景,有没有人有任何想法如何可以摆脱?UITabBarController不显示其内容的全部大小(UIViewController)
详细信息: 我有这个UITabBarController
当我添加UIViewController
到它的UIViewController
适合于UITabBarController
内规模仅在视网膜4英寸屏幕iOS的7。但是,当我在Retina 4的iOS 6中尝试此操作时,窗口底部将以橙色显示UITabBarController
的背景。
我曾尝试来解决这个问题:
1)重新创建
UITabBarController
和手动设置contentsizeForViewInPopOver2)的NSLog的
UIViewController
框架,以确保它们是320x568,960 and 1134
但他们都显示相同的橙色(我设置UITabBarController
的背景为橙色来验证)3)放大mapview和父视图的mapview,但没有结果。
注意:图像底部的灰色部分是所有的tabbaritems,但它们并未出于此目的显示。
我看不出有什么变化,也无法弄清楚。有人能帮帮我吗?
在此先感谢!
经过数小时的研究,我发现原因是什么。
我有一个名为的方法 - (void)showTabBar在我的viewcontroller显示,并设置框架/界限为特定的框架,特定于iOS 7在视网膜4显示!
现在一切都很好,但由于@MrTJ对 viewDidLayoutSubviews
将地图视图的4个自动布局约束设置为视图控制器的主视图,每个边(顶部,右侧,底部,左侧)各有一个,其值均为零。
感谢您的回答,但我没有在故事板开发,因为它很复杂的程序变得更大的暗示。有没有一种解决方案等同于编程?谢谢! – tsuz
您也可以通过'constraintsWithVisualFormat:options:metrics:views:''NSLayoutConstraint'方法以编程方式创建布局约束。然而,在你的情况下,例如从你的控制器的'viewDidLayoutSubviews'方法手动改变地图视图的框架可能会更简单,添加这一行:'self.myMapView.frame = self.view.bounds;' – MrTJ