0

我想在 DetailViewController 中以编程方式创建一个选项卡栏。我将拥有三个 ViewController:

  1. 评论
  2. 项目
  3. 优惠

我想在 TabBar 中按此顺序显示 3 个项目,但是当我来到 DetailView 时,我想首先显示 TabBar 中的第二个项目(位于中间的那个)。我如何创建我的 DetailViewController 来管理它?

4

3 回答 3

3

使用 selectedIndex 方法,您可以使用 tebbar viewControllers 数组索引设置任何“视图控制器”。这个链接也很有用http://iosmadesimple.blogspot.in/2012/09/tabbed-application-doing-it.html

self.navigationController.tabBarController.selectedIndex 不起作用

self.tabBarController = [[UITabBarController alloc] init];

UIViewController *commentsController = [[CommentsViewController alloc] init];

UIViewController *projectsController = [[ProjectsViewController alloc] init];

UIViewController *offersController = [[OffersViewController alloc] init];

self.tabBarController.viewControllers = @[commentsController, projectsController, offerController];

[self.tabBarController setSelectedIndex:1];

于 2013-09-11T06:34:51.800 回答
0

我认为您需要创建 tabBarController 并选择正确的索引。

self.tabBarController = [[UITabBarController alloc] init];
self.tabBarController.viewControllers = @[viewController1, viewController2, viewController3];
[self.tabBarController setSelectedIndex:1];
于 2013-09-10T23:45:22.623 回答
0

你可以让你的 DetailViewController 继承自 UITabBarViewController

然后在 ViewDidload 里面:

self.viewControllers = @[commentsViewController, projectsViewConroller, offersViewController];
self.selectedIndex = 1; //to move to the middle
于 2013-09-11T00:07:43.983 回答