2013-03-25 86 views
0

我是目標C的初學者。我一直在尋找四個小時,但我找不到一個有用的(對我來說)這個答案。如何在UINavigationController中正確地繼承UITableViewController?

我有一個TableView,但我需要一個標題欄。在搜索完成後,我發現我必須在UINavigationController中劃分UITableView的子類。

請注意,我不想用這個TableView製作一個全新的應用程序,我希望這是我正在開發的一個更大的應用程序的一部分。

因爲我是初學者,我不知道該怎麼做,經過幾個小時的努力,我決定發佈這個問題。

有沒有人有教程,清晰的逐步描述或類似的東西,它清楚地描述瞭如何做到這一點?

回答

1

創建表視圖控制器的實例,然後將其設置爲導航控制器的根視圖控制器。

TheTableViewController *viewController = [[TheTableViewController alloc] initWithStyle:UITableViewStyleGrouped]; 
UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:viewController]; 
//present navigationController - [self presentViewController:navigationController animated:YES completion:NULL]; 

... 

//TheTableViewController.m 
self.title = @"title"; 
+0

當我創建了一個全新的應用程序這工作。問題是,我希望這個TableView成爲一個更大的應用程序的一部分。當試圖在現有的項目中這樣做時,這隻會給我一個帶有標題欄的黑屏。當我嘗試設置標題時,它在啓動應用程序時甚至不會出現在標題欄中。有任何想法嗎? – 2013-03-26 13:44:32

1

要創建的標題吧,你需要一個UINavigationController即會控制UIViewController這些各的viewController擁有財產稱爲title。此標題將顯示在導航的頂部欄中。所以做一些事情是這樣的:

UITableViewController *tableVC = [[UITableViewController alloc] init]; 
tableVC.title = @"myTable"; 
UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:tableVC]; 

您可以設置nav爲根視圖控制器在DidLaunch功能appDelegate

+0

與下面的答案相同。當我用這段代碼創建一個全新的應用程序時,這是有效的,但我需要將一個帶有標題欄的TableViewController放在現有的應用程序中。當我使用這個代碼在我現有的應用程序中,它給我的只是一個帶有標題欄的黑屏。任何想法出了什麼問題? – 2013-03-26 14:06:07