NavigationController里面的TabBarController

时间:2011-10-19 18:05:47

标签: objective-c xcode4 uinavigationcontroller uitabbarcontroller

想象一下,我们有多视图应用程序,它由导航控制器控制。我们使用pushViewController方法从第一个视图到第二个视图,这不是问题,但我们需要转到第三个视图。第三个是一个看起来像TabBar的视图。我们怎么做?第三个视图应该由TabBarController控制,不是吗? 那么如何通过控制呢?我声明了一个插座UITabBarController * tbc并将其连接到xib文件中的TabBarController然后我在viewDidLoad中尝试了这个: tbc = [[UITabBarController alloc] init];

它没有显示任何内容。 非常感谢您的帮助

2 个答案:

答案 0 :(得分:3)

有点奇怪。有一个用于切换视图的tabBarController以及其中一些视图的标准可能是导航控制器。但是......

创建UITabBarController并推送它。

NSMutableArray *viewControllers = [[NSMutableArray alloc] init];

// create someView
[viewControllers addObject:someView];
// create someView2
[viewControllers addObject:someView2];


UITabBarController *tabController = [[UITabBarController alloc] init];
[tabController setViewControllers:viewControllers];

[[self navigationController] pushViewController:tabController animated:YES];

然后,从tabBarContoller视图,根据某些操作,您可以选择弹出它:

[self.navigationController popViewControllerAnimated: NO];

答案 1 :(得分:0)

您可以在最新版本的Xcode中的故事板编辑器中进行连线。

但是,由于这非常非标准地使用控件,因此您需要一个非常的理由来说明为什么您需要这样的UI。

即便如此,如果界面笨重,Apple的审核流程可能会降低你的应用程序。