2010-07-02 326 views
0

我在xcode中爲iPhone做事情越來越好,但在這裏我遇到了死衚衕。把根控制器放在哪裏?

我正在嘗試構建一個包含兩個視圖的應用程序:主要設置和一個設置。我希望能夠在他們兩個之間切換。因爲我需要主視圖中的每個像素,所以我構建了一個switchView類,當我按下一個按鈕(比tabView小很多)時,它就可以在兩個視圖之間切換,這很好。

現在我在開發中有點深入,並希望設置視圖成爲表格視圖,從我可以導航到下一級別的細節。我以前做過這個,但沒有切換視圖。

我的問題是,我得到的表視圖(在設置)工作,但一旦我嘗試推我的視圖控制器沒有任何反應。在調試時,我可以看到它通過代碼工作(例如didSelectRowAtIndexPath正在工作),但沒有新的視圖彈出。既沒有任何錯誤信息。

我在我的MainWindow.xib中添加了switchView,然後做了一個 [window addSubview:switchViewController.view];在我的AppDelegate中加載主視圖。

我應該在哪裏放置用於表視圖導航的根控制器?因爲我猜這是我的問題?

下面導致什麼碼...

ViewsAppDelegate *delegate =[[UIApplication sharedApplication] delegate]; 

    [delegate.settingsNavController pushViewController:settingsDetailViewController animated:YES]; 

快樂的任何建議,可能會導致我在正確的軌道。花費太多時間來解決這個問題。

回答

0

我可能會誤解你以後在做什麼,但讓我試試......

當你創建你的項目,你應該得到你的MainViewController和AppDelegate中紡都起來,創造了你。從你提供的代碼片段看來,就像你在MainViewController中實例化一個新的(也可能是第二個)應用程序委託。

而不是這樣做,我建議您將NavigationController上移一個級別到SDK提供的AppDelegate。然後,在您的MainViewController中,將現有的AppDelegate添加爲IBOutlet,並將它們全部綁定在IB中。一旦你完成了,使用導航控制器應該更順利。

例如,我的MainWindow.xib有幾個對象,我已經強調了兩個,我想你可能關注...

http://www.freeimagehosting.net/uploads/f50268da03.png

*對不起,我的鏈接 - 我目前無法發佈圖片。

然後,從我的AppDelegate定製我applicationDidFinishLaunchingWithOptions是這樣的...

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {  

    navController.viewControllers = [NSArray arrayWithObject:mainMenuController]; 

    // Override point for customization after app launch  
    [window addSubview:navController.view]; 
    [window makeKeyAndVisible]; 

    return YES; 
} 

即保持navController了在最高水平(其中我認爲它屬於),並允許你推和整個流行的觀點整個應用程序,同時保持堆棧上的歷史。

希望有幫助 - 我可能完全誤解了你以後的樣子。

祝你好運! Bob

+0

謝謝鮑比 我想要達到什麼(即使我可能以錯誤的方式開始它)就像在蘋果天氣應用程序中。你有一個主屏幕,一旦你點擊小我你進入設置屏幕。在該屏幕上,我希望有一個帶有深入導航的tableView。所以我從一個普通的基於Windows的應用程序開始,然後在兩個視圖之間切換。工作很好。但是當我想添加鑽取tableView在我得到(仍然是)卡住的意見之一。 也許我應該嘗試基於實用工具的模板...? – Structurer 2010-07-02 13:09:26

+0

我鼓勵您考慮查看View Based模板,然後查看一些關於如何使用導航控制器的教程。 網絡上有一些免費的快速免費(http://www.youtube.com/watch?v=9ozwoETFei0),如果你不介意花一些錢(5美元),那麼在Pragmatic Programmers的傢伙就會有一個真正的不錯的iPhone SDK教程系列(http://pragprog.com/screencasts/v-bdiphone/writing-your-first-iphone-application)。第二集將是完美的。 有了這些知識,你應該能夠很快地修改你所擁有的東西。 祝你好運! – 2010-07-04 13:11:06

+0

謝謝 我上週一定是脫水了。沒有什麼是真正的工作,但現在整理。感謝您的回覆和支持! – Structurer 2010-07-05 07:23:45