使用对应的UITabBarController的selectedViewController或selectedIndex方法。
针对对此答案的评论,我提供了一个如何实现的示例:
id firstViewController = [[FirstViewController alloc] initWithNibName:@"FirstView" bundle:[NSBundle mainBundle]];
id secondViewController = [[SecondViewController alloc] initWithNibName:@"SecondView" bundle:[NSBundle mainBundle]];
self.tabBarController = [[UITabBarController alloc] init];
self.tabBarController.viewControllers = [NSArray arrayWithObjects:firstViewController, secondViewController, nil];
[firstViewController release];
[secondViewController release];
// Select the second tab bar item and its view
self.tabBarController.selectedIndex = 1;
[self.window addSubview:tabBarController.view];
[self.window makeKeyAndVisible];
在我的测试中,似乎使用 UITabBarController 的 selectedViewController 方法设置当前视图不会更新 selectedIndex 属性(显示新视图但未更改所选 UITabBarItem )。这与文档中承诺的行为相反。但是,使用上面代码片段中演示的 selectedIndex 方法应该可以正常工作。