2011-11-22 34 views
0

我有tabbar +導航應用程序。我打電話給filterModalController:如何在modalViewController上推送UIVIewController?

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

看起來沒問題。然後我想推送officeController。

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

但是officeController沒有出現。哪裏不對?

回答

1

我的理解是,模態視圖控制器不是爲了推動其他視圖控制器,所以你可能想考慮你正在使用的視圖的層次結構。 Modals是爲了返回到父視圖控制器。您可能需要致電

[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

相關問題