2011-12-13 78 views
0

我正在構建我的第一個應用程序,並且一直在尋找答案但找不到答案。可能是我在搜索中使用的關鍵字。所以這是我的問題。iPad,主視圖中的導航堆棧,在主視圖中選擇一個項目並更新詳細視圖

這是一個帶有主從模板的iPad應用程序(Xcode 4)。主視圖應顯示類別列表,選擇每個類別後,文章列表將被推送到主視圖(導航欄上的後退按鈕返回到類別列表)。

我可以讓它工作到這裏。選擇一篇文章後,我似乎無法使用文章名稱更新詳細視圖中的標籤。

這是我的代碼在AppDelegate.m:

MasterViewController *masterViewController = [[MasterViewController alloc] initWithNibName:@"MasterViewController" bundle:nil]; 
UINavigationController *masterNavigationController = [[UINavigationController alloc] initWithRootViewController:masterViewController]; 

ArticlesViewController *articlesViewController = [[ArticlesViewController alloc] initWithNibName:@"ArticlesViewController" bundle:nil]; 
UINavigationController *articlesNavigationController = [[UINavigationController alloc] initWithRootViewController:articlesViewController]; 

DetailViewController *detailViewController = [[DetailViewController alloc] initWithNibName:@"DetailViewController" bundle:nil]; 
UINavigationController *detailNavigationController = [[UINavigationController alloc] initWithRootViewController:detailViewController]; 

articlesViewController.mainDetailViewController = detailViewController; 

self.splitViewController = [[UISplitViewController alloc] init]; 
self.splitViewController.delegate = detailViewController; 
self.splitViewController.viewControllers = [NSArray arrayWithObjects:masterNavigationController, detailNavigationController, nil]; 
self.window.rootViewController = self.splitViewController; 

如果我更改以下行:

self.splitViewController.viewControllers = [NSArray arrayWithObjects:masterNavigationController, detailNavigationController, nil]; 

self.splitViewController.viewControllers = [NSArray arrayWithObjects:articlesNavigationController, detailNavigationController, nil]; 

標籤將被更新。

任何指針?我已經看到主視圖上的教程連接到詳細視圖,其中主視圖只有一個導航級別,但似乎無法找到模擬我的情況的視圖。再次,可能是我只是不知道正確的關鍵字進行搜索。

謝謝你在先進。

回答

0

我設法讓它通過使用NSNotificationCentre工作。

在ArticlesViewController(在MasterViewController中選擇一個類別時顯示的第二層),我發佈了一個本地通知。

在DetailViewController中,我爲通知添加了一個觀察者。

這樣我就可以更新詳細視圖中的標籤。

Credits點擊這個偉大的視頻教程:http://youtu.be/vnkNUoRtk1E

相關問題