我在基于Tabbar导航的应用程序中遇到问题。我有一个带有3个标签栏按钮项的标签栏。
每个标签栏项目,我需要显示导航控制器的视图。当我点击第一个按钮时,我需要显示导航控制器的根视图。
我需要在按下导航控制器的视图时,然后在一个视图中我需要显示标签栏。当按下第二个视图时,我需要隐藏标签栏。当按下第三个视图时,我需要再次显示标签栏。它也应该在弹出视图时起作用。
在导航控制器的根视图(主视图)中,我需要在底部显示标签栏。但是推出了新视图(第一个视图),然后我需要隐藏标签栏。然后我将属性hidesBottomBarWhenPushed
设置为YES。
FirstViewController *firstController = [[FirstViewController alloc]initWithNibName:@"FirstViewController" bundle:nil];
firstController. hidesBottomBarWhenPushed = YES;
[self.navigationController pushViewController:firstController animated:YES];
第一个视图可以正常工作。
但问题是当我按下一个新视图(第二个视图)时,即使我设置了属性,标签栏也不会显示:
SecondViewController *secondController = [[SecondViewController alloc]initWithNibName:@"SecondViewController" bundle:nil];
secondController. hidesBottomBarWhenPushed = NO;
[self.navigationController secondController animated:YES];
答案 0 :(得分:1)
让我知道这是否有效。
FirstViewController *firstController = [[FirstViewController alloc]initWithNibName:@"FirstViewController" bundle:nil];
//firstController. hidesBottomBarWhenPushed = YES;
[self.navigationController presentViewController:firstController animated:YES];