使用selectedViewController切换iPhone TabBarController不会显示视图

使用selectedViewController切换iPhone TabBarController不会显示视图,iphone,tabbarcontroller,Iphone,Tabbarcontroller,我快疯了 我有一个带有viewController的TabBarController,当我在项目上按下选择时,它在我的应用程序中工作正常 当我试着打电话时 self.tabBarController.selectedViewController=[self.tabBarController.ViewController对象索引:2]; 索引2存在,问题也出在索引1上,我看到在位置2选择了tabBarItem,我是说按钮,但视图不会显示在数组项的位置0处。我看到所选的viewController在

我快疯了

我有一个带有viewController的TabBarController,当我在项目上按下选择时,它在我的应用程序中工作正常

当我试着打电话时 self.tabBarController.selectedViewController=[self.tabBarController.ViewController对象索引:2]; 索引2存在,问题也出在索引1上,我看到在位置2选择了tabBarItem,我是说按钮,但视图不会显示在数组项的位置0处。我看到所选的viewController在我的调试器控制台中工作,但视图没有出现

为什么它不起作用?我在以前的应用程序中使用过它,显然没有什么不同

谢谢你提供的任何建议


Fabrizio这是一个时间问题,我调用setSelectedViewController太早,它无法切换

使用以下方法修复:

[自执行选择器:@selectoryourmethodwithobject:nil afterDelay:0.1]


Fabrizio

如果您试图直接更改所选索引,会发生什么情况?例如:self.tabBarController.selectedIndex=2;。视图显示了吗?是的,是一样的。我尝试在AppDelegate中的对象2上调用self.TabBarController.SelectedViewController,它可以工作,但在我的ViewController中,视图没有出现!我已经按照XCode中的TabBarController模板创建了一个新项目,并将self.TabBarController.SelectedViewController放在对象1上。我的第一个ViewController的TabBarController inside ViewDiLoad方法中的两个ViewController无效,因此同样的问题。我看到已选中对象1上的TabBarItem,但未显示任何视图。奇怪的是,我用另一个TabBarController做了一个旧的测试,它和新的测试完全一致,并且可以正常工作!我在SDK4之前创建了它。我发现:其中selectedIndex反映了您希望从左到右选择的选项卡,第一个选项卡从0开始。唯一需要注意的是,将不会调用UIViewController viewWillAspect方法。因此,如果您需要在显示选项卡之前对其执行某些操作,您可能需要自己调用它。self.tabBarController.selectedIndex=2;[self.tabBarController.selectedViewController视图将显示:是];但这也…它不起作用。它一定是我的TabBarController中的某个东西,但我不知道是什么:我确信这与SDK4有关。只需尝试为TabBarController构建XCode模板,添加self.TabBarController.selectedIndex=1;到第一个ViewController,您将看到TabBarItem将被选中,但视图将不会。。。