2

我在基于 Tabbar-Navigation 的应用程序中遇到问题。我有一个带有 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];
4

1 回答 1

1

让我知道这个是否奏效。

FirstViewController *firstController = [[FirstViewController alloc]initWithNibName:@"FirstViewController" bundle:nil];
//firstController. hidesBottomBarWhenPushed = YES;
[self.navigationController presentViewController:firstController animated:YES];
于 2012-01-06T14:46:08.027 回答