2012-01-30 60 views
0

如何從AppDelegate訪問導航控制器?iOS:從AppDelegate訪問導航視圖控制器

假設我有以下viewControllers:

NavViewController - >的UIViewController - > NavViewController - >的UIViewController - > NavViewController - >的UITableViewController

在AppDelegate.m,我怎麼能訪問的UITableViewController?

我只知道如何使用下面的代碼來訪問第一個視圖控制器:

UINavigationController *navigationController = (UINavigationController)[self.window.rootViewController navigationController]; 
UIViewController *viewController1 = (UIViewController)[navigationController viewControllers]objectAtIndex:0]; 

,但有人可以教我如何訪問的UITableViewController和第二的UIViewController從AppDelegate.m?

回答

1

NavViewController - >的UIViewController - > NavViewController - >的UIViewController - > NavViewController - >的UITableViewController

你永遠不應該有這樣的。我甚至不知道這是否可能。你應該只有一個UINavigationController。也許你只是以奇怪的方式顯示你的設置。

你可以從應用程序的委託這樣的訪問第二的UIViewController:

UIViewController *viewController2 = (UIViewController *)[navigationController viewControllers]objectAtIndex:1]; 

而且的UITableViewController是這樣的:

UITableViewController *viewController3 = (UITableViewController *)[navigationController viewControllers]objectAtIndex:2]; 
+0

感謝邁克爾......但爲什麼同樣的指數? – Aldee 2012-01-30 05:51:31

+0

對不起,這是一個錯誤 – 2012-01-30 05:52:11

+0

Ahh ..謝謝..嗯..但現在應該這樣:UINavController - > UIViewController - > UIViewController - > UITableViewController? – Aldee 2012-01-30 05:53:38

相關問題