我在隐藏底层uiTabBar Controller时遇到问题。我使用以下代码隐藏。
UITabBar *tabBar = self.tabBarController.tabBar;
UIView *parent = tabBar.superview;
UIView *content = [parent.subviews objectAtIndex:0];
UIView *window = parent.superview;
[UIView animateWithDuration:0.5
animations:^{
CGRect tabFrame = tabBar.frame;
tabFrame.origin.y = CGRectGetMaxY(window.bounds);
tabBar.frame = tabFrame;
content.frame = window.bounds;
}];
它的工作正常。但在主视图中我有按钮,用户点击按钮,打开模态视图控制器作为弹出对话框。取消弹出对话框后,将出现以下屏幕。
答案 0 :(得分:1)
是的,我解决了我的问题
- (void)viewWillAppear:(BOOL)animated
{
// Get the size of the main screen
CGRect fullScreenRect = [[UIScreen mainScreen]bounds];
// Hide the tab bar
((UITabBarController *)self.parentViewController).tabBar.hidden = YES;
// Resize and fill the screen
[[((UITabBarController *)self.parentViewController).view.subviews objectAtIndex:0] setFrame:fullScreenRect];
}
- (void)viewWillDisappear:(BOOL)animated
{
((UITabBarController *)self.parentViewController).tabBar.hidden = NO;
}
当我使用上面的代码时,它将完美地工作:) :) :)
答案 1 :(得分:0)
选择要隐藏标签栏的视图控制器&选中“在推送时隐藏底栏”。