0

我會盡我所能解釋這一點。ios 5用正確的TabBar和NavController打開特定的視圖控制器

我的應用程序有TabBarController其功能是作爲主導航

我有原因請看添加列表模式的看法。該屏幕可以從2個不同的視圖控制器中獲得。

從主要路線我簡單地關閉模式,一切都很好。但是從第二條路線我需要能夠打開一個全新的ViewController。

我遇到的問題是我似乎無法打開包含TabBar和NavBar的ViewController。

這是我目前正在使用的代碼,試圖使其工作。

UITabBarController *tabController = [self.storyboard instantiateViewControllerWithIdentifier:@"MainInterface"]; 
    tabController.selectedIndex = 1; 
    //_window.rootViewController = tabController; 
    UINavigationController *groceryNavController = [self.storyboard instantiateViewControllerWithIdentifier:@"MainNavController"]; 
    UIViewController *groceryViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"GroceryViewController"]; 

    UIViewController *currentVC = self; 
    [currentVC.navigationController pushViewController:groceryViewController animated:YES]; 

回答

0

其中一種方法是通過委託。如果委託,相關的導航控制器被稱爲:

self.navigationController 

然後,你必須做的:

YourAppDelegate *delegate = (YourAppDelegate *)[[UIApplication sharedApplication] delegate]; 
[delegate.navigationController pushViewController:groceryViewController animated:YES]; 

(替換「YourAppDelegate」與您的應用程序代理的實際名稱)

+0

我似乎無法得到這個工作。我用過你的模型,但viewcontroller沒有被顯示。 – rysulliv 2012-08-17 13:59:28