我有一个UISplitView,主视图底部包含一个我在Storyboard中创建的UITabBar(UITabBar的项目也在Storyboard中创建)。主视图也嵌入在UINavigationController中。我在主视图中呈现一个新视图:
AppDelegate* appDel = [[UIApplication sharedApplication] delegate];
UIViewController* viewController = [self.storyboard instantiateViewControllerWithIdentifier:@"ManageCategoryView"];
[appDel.window.rootViewController presentViewController:viewController
animated:YES
completion:^{}];
(我也试过self.view presentViewController:...
,但同样的事情发生了)
在呈现视图并再次关闭之后,UITabBar中的文本将被锁定:
在: a http://www.ld-host.de/uploads/images/bf4343f8d744a8270d76399a8781f55e.png
在: a http://www.ld-host.de/uploads/images/2222ba5f5d469ec2ece04ac67bd00d4a.png
这只发生在iPhone上。在iPad上,UITabBar保持不变。 此外,将视图推送到UINavigationController时也不会发生这种情况。
为什么会发生这种情况?如何防止它?
答案 0 :(得分:0)
我刚刚发现了如何解决这个问题。
我没有为UITabBar添加Autolayout的任何约束,并且在我设置约束以使其位于屏幕的底部(距离向左,向右和按钮设置为0)之后,UITabBar保持不变。
对我来说似乎很奇怪,缺少约束会导致如此奇怪的结果,但现在它可以正常工作。