0

我的应用程序的主要功能由 UITabBarController 控制。但是,我需要加载一个具有 UINavigationController 的视图。当我返回我的 UITabBarController 使用

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

我的 UITabBarController 不再响应点击。看起来视图没有焦点。

但是,如果我使用此代码切换回 UITabBarController:

[window addSubview:tabBarController.view]

我的按钮会响应。我觉得“addSubview”效率较低,因为我从不从窗口中删除视图,因此它必须将视图的第二个副本添加到堆栈中。我对么?有没有办法使用第一种方法并使我的按钮响应?请告诉我。

4

1 回答 1

1

听起来您可能错误地展示了导航控制器。您绝对不应该将视图直接添加到窗口中。您想使用

[myTabBarController presentModalViewController:myNavController animated:YES];

完成导航控制器后,您可以将其关闭

[myTabBarController dismissModalViewControllerAnimated:YES];

一切都应该工作。

顺便说一句,这都记录在 UIViewController 的文档和“iPhone OS 的视图控制器编程指南”文档中。

于 2009-05-25T17:18:53.457 回答