Iphone 在UITabBarController中打开视图

Iphone 在UITabBarController中打开视图,iphone,cocoa-touch,uitabbarcontroller,Iphone,Cocoa Touch,Uitabbarcontroller,我需要以编程方式打开选项卡栏中的某个选项卡 我尝试从UITabBarController调用以下方法: self.selectedViewController = myVController; 这不管用 打开选项卡的正确方式是什么 多谢各位 更新:我尝试了以下代码: self.selectedViewController = [ [self viewControllers] objectAtIndex: 0]; 这将为我打开一个所需的选项卡(它正在被选中),但活动视图未被更新 我的方法是使用

我需要以编程方式打开选项卡栏中的某个选项卡

我尝试从UITabBarController调用以下方法:

self.selectedViewController = myVController;
这不管用

打开选项卡的正确方式是什么

多谢各位

更新:我尝试了以下代码:

self.selectedViewController = [ [self viewControllers] objectAtIndex: 0];

这将为我打开一个所需的选项卡(它正在被选中),但活动视图未被更新

我的方法是使用self.tabBarController.selectedIndex=1(第一个选项卡位于索引0)。

关于
selectedIndex
属性,苹果的文档说:

在之前的iPhone操作系统版本中 版本3.0,此属性反映 所选选项卡栏项目的索引 只有正在尝试将此值设置为 视图控制器的索引,该索引是 在选项卡栏中不可见,但不可见 而是由更多的导航管理 控制器,没有效果

也许这就是你的问题

一种可能的解决方法是使用自己的
uitabar
并处理自己的视图。然后你可以这样做:

[tabBar setSelectedItem:[tabBar.items objectAtIndex:1]];
只需实现
uitabardelegate
,并定义此函数即可获取项目选择消息并手动切换视图。(虽然如果您使用的是高级
UITabBarController
功能,但可能不值得您付出努力。)


它与我的代码有相同的问题。视图并不总是更新。
- (void)tabBar:(UITabBar *)tabBar didSelectItem:(UITabBarItem *)item
{

}