喜
在我的应用程序中我使用TabBar.At首先当我调用loginControl时,我现在使用[login hidesBottomBarWhenPushed=YES];
隐藏标签栏如果登录成功然后我显示detailViewController但是我甚至在设置{{1之后也看不到TabBar转到hidesBottomBarWhenPushed
。
有什么问题......任何人都可以帮助我吗?
答案 0 :(得分:2)
使用此方法隐藏和显示标签栏:)
-(void)makeTabBarHidden:(BOOL)hide
{
UITabBarController *tabBarController = self.tabBarController;
if ( hide == tabBarController.tabBar.hidden ) {
return;
}
UIView *contentView;
if ( [[tabBarController.view.subviews objectAtIndex:0] isKindOfClass:[UITabBar class]] ) {
contentView = [tabBarController.view.subviews objectAtIndex:1];
} else {
contentView = [tabBarController.view.subviews objectAtIndex:0];
}
if (hide) {
contentView.frame = tabBarController.view.bounds;
}
else {
contentView.frame = CGRectMake(tabBarController.view.bounds.origin.x,
tabBarController.view.bounds.origin.y,
tabBarController.view.bounds.size.width,
tabBarController.view.bounds.size.height - tabBarController.tabBar.frame.size.height);
}
tabBarController.tabBar.hidden = hide;
}
答案 1 :(得分:0)
如果您不再需要登录视图控制器,则可以在推送第二个之前弹出它。这将完成工作,但后退按钮中有奇怪的动画。它仍然是一个解决方案:)
[navController popViewControllerAnimated:NO];
编辑:
试试这个......
loginSuccessController *login = [[loginSuccessController alloc] initWithNibName:@"loginSuccessController" bundle:nil];
[self.navigationController popViewControllerAnimated:NO];
[self.navigationController pushViewController:login animated:YES];
答案 2 :(得分:0)
你可以在loginsuccesscontroller的viewwillappear或viewdidload中尝试[self setHidesBottomBarWhenPushed:NO];