2010-05-09 48 views
0

我想使用plist填充我的分組表。我看了一下DrillDownSave示例項目,而且我還是沒有什麼明智的。雖然,我確實知道我可以在那裏存儲層次結構等。使用plist填充分組表

所以這裏的問題:

  1. 我如何用我的plist新項目添加到我的分組表?我目前正在用一個數組餵食桌子,而且我注意到一個數組對我來說不會是最好的。

  2. 當用戶點擊plist中的項目時,如何將視圖推送到相應的項目?換句話說,我怎樣才能將基於所選行(由plist生成)的視圖推送到下一個「視圖」?

如果有任何意義,請回復。 謝謝, 傑克。

回答

0

要加載陣列的plist中表示爲實際的NSArray例如,使用:

NSString *plistPath; // Assume that this is valid 

NSArray *plistArray = [NSArray arrayWithContentsOfFile:plistPath]; 

要「深入」,你需要做以下的UITableViewDelegate-tableView:didSelectRowAtIndexPath:indexPath方法:

  • 創建一個新的視圖控制器實例
  • 告訴新的VC什麼數據或對象「鑽取」到(通常通過設置屬性)
  • 推VC到您的導航控制器

假設你下來鑽探到的對象是一個Widget,和小部件的陣列存儲在一個名爲widgets伊娃,你就一個widget屬性添加到您的詳細信息視圖控制器,然後做這樣的事情:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath 
{ 
    [tableView deselectRowAtIndexPath:indexPath animated:YES]; 
    MyDetailViewController *detailViewController = [[MyDetailViewController alloc] init]; 
    detailViewController.widget = [widgets objectAtIndex:indexPath.row]; 
    [[self navigationController] pushViewController:detailViewController animated:YES]; 
    [detailViewController release]; 
} 

(這正好在你的表視圖代表)

欲瞭解更多信息,請參閱this part of the documentation

+0

感謝您的回覆。我將如何添加一個新的屬性到我的視圖控制器?當談到objective-c和iPhone SDK時,我有點無知。乾杯。 – 2010-05-09 10:23:01

+0

如果你不確定如何在Obj-C中添加一個屬性,我建議你買一本關於iPhone開發的書,比如[這個來自實用程序員的書](http://pragprog.com/titles/ amiphd/iphone-sdk-development),然後嘗試通過它來完成。從現在的位置到你想要達到的目標之間,你可能會遇到一連串的問題,而像這樣的書會通過例子回答90%的問題。 – 2010-05-09 11:18:12