2012-07-11 112 views
0

我的問題是:爲新的UITableView創建新的UITableViewController?

我正在製作一個主要基於表視圖控制器的iPhone應用程序。我需要能夠在運行時爲表視圖創建數據。我還需要在運行時創建更深的級別。即。我需要能夠點擊行,它應該帶我到一個新的表視圖是空的。此外,我需要理想地能夠繼續製作數據並無限深入。所創建的數據存儲在覈心數據中。我已經找到了一種方法來鏈接每個表格視圖中顯示的數據。

我的問題是這樣的: 是否可以在新的uitableviewcontroller中創建每個新的表視圖?我就是這麼做的。

例如。 如果我點擊tableviewcontroller行上的「Varun」。它將在運行時創建一個新的tableviewcontroller,並向我顯示一個空表視圖。如果我在那裏添加數據並返回到varun,然後再次單擊它,數據應該在那裏。

所以我應該爲每個新的tableview動態地創建tableviewcontrollers?

謝謝!

如果我不清楚,我非常抱歉。這是一個很難解釋的概念!

再次感謝!

回答

0

你應該-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath方法實現代碼。

-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{ 
    YourTableViewController *yourTableView = [[YourTableViewController alloc] initWithStyle:UITableViewStylePlain]; 
    [self.navigationController pushViewController:yourTableView animated:YES]; 

} 

我認爲這會對您有所幫助。

+0

嗨!是的多數民衆贊成正是我在做什麼:)我想確保爲每個'UITableView'製作'UITableViewController'確定。謝謝! – VarunMurali 2012-07-11 06:17:17

0

Hy there。通常每個視圖都有它自己的子類的實例,所以這裏絕對沒有問題。您甚至可以爲各個視圖提供不同的類。示例:DepartmentListViewController顯示所有部門並推送到StaffViewController,這可能會顯示一個員工列表。

Apple Document給你的UIViewControllers

很好地概括我會強烈建議您使用故事板這對於以數據爲中心的應用程序非常有用(而不是一個遊戲等)。

故事板引擎爲您實例化您的ViewControllers,您可以在它們顯示之前設置它們的屬性。我做這概括了故事板的優點後:

https://stackoverflow.com/a/8574345/784318

看看這個教程,似乎給在故事板很好的概述。從iOS 5.0開始,您還可以在UITableView中創建靜態單元格和原型單元格,我認爲這對SDK非常有用。

要更深入地瞭解故事板和桌面視圖,您應該檢查關於故事板和UITableviews的WWDC 20122011)會話。

http://developer.apple.com/library/ios/featuredarticles/ViewControllerPGforiPhoneOS/Art/after_modal_segue.jpg

+0

嗨!感謝這麼多信息!另一個問題。這可以在運行時完成嗎?我可以使用故事板製作無限制的控制器嗎?謝謝! – VarunMurali 2012-07-11 06:20:07

+0

是的,因爲你可以從一個ViewController向自己添加segues。這可能有點棘手,因爲你可能需要處理嵌套的深度,但它絕對有可能。 – Besi 2012-07-11 07:49:20