如何在modalViewController上推送UIVIewController?

时间:2011-11-22 14:55:01

标签: uinavigationcontroller iso

我有tabbar +导航应用。我调用filterModalController:

[self.navigationController presentModalViewController:filterModalController animated:YES];

看起来不错。然后我想推出officeController。

[self.navigationController pushViewController:officeController animated:YES];

但是OfficeController没有出现。有什么问题?

1 个答案:

答案 0 :(得分:1)

我的理解是模态视图控制器并不意味着推送其他视图控制器,因此您可能需要考虑所使用的视图的层次结构。模态意味着返回父视图控制器。您可能需要致电

[self.navigationController dismissModalViewControllerAnimated:YES];
在推送officeViewController之前

当我遇到这个问题时,我最终推出了一个导航控制器作为模态视图控制器,并将'filterModalController'作为根视图控制器。由于您已经拥有导航控制器,这可能会让事情变得混乱。

UINavigationController*  filterNavController = [[UINavigationController alloc] 
                            initWithRootViewController:filterModalController];

// Display the nav controller modally.
[self presentModalViewController:filterNavController animated:YES];

[locationNavController release];

然后filterNavController可以推送您的officeController