2011-08-11 111 views
0

我有一個plist,我試圖拉動數據顯示在一個UITableViewController充當DetailViewController。我知道如何在UIPickerView中顯示來自plist的數據。它是一樣的,還是應該做出什麼改變?信息來自plist在UITableViewController

我所擁有的是:

- (void)viewDidLoad 
{ 

    [super viewDidLoad]; 

    NSBundle*bundle=[NSBundle mainBundle]; 
    NSString *path = [bundle pathForResource:@"Grammar" ofType:@"plist"]; 
    grammarArray = [[NSArray alloc] initWithContentsOfFile:path]; 

    [self configureView]; 
} 


- (void)tableView:(UITableView *)tableViewdidSelectRow:(NSInteger)rowinComponent:(NSInteger)component 
{ 

} 

我在哪裏何去何從?

回答

0

它非常直截了當:

爲了能夠顯示一個UITableViewCell數據是通過使用UITableViewController

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath委託方法來完成。

在這個方法裏面你可以設置當前的各種成員UITableViewCell。如或detailTextLabel

You can further extend a UITableViewCell and add more features to it.

+0

那麼,我需要做的是從我的PLIST中提取數據。如果我使用一個UIPickerView,我會做一些事情,如: 「 - (的NSString *)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger的)行inComponent:(NSInteger的)組件 」 然後我會做我的PLIST中的NSDictionary和NSString,所以我可以使用我從標籤中的UIPickerView中選擇的內容。我如何做與UITableViews類似的東西? – lakerka

+0

在UITableViewController中,你有一個名爲'cellForRowAtIndexPath'的類似方法,用它來初始化你的單元。 –

+0

我得到一個錯誤,使用「行」,它說「行」沒有定義。 我會用什麼?完整的代碼看起來像 ' - (void)viewDidLoad { NSBundle * bundle = [NSBundle mainBundle]; NSString * path = [bundle pathForResource:@「Grammar」ofType:@「plist」]; grammarArray = [[NSArray alloc] initWithContentsOfFile:path]; [自configureView] } - (的UITableViewCell *)的tableView:(UITableView的*)的tableView的cellForRowAtIndexPath:(NSIndexPath *)indexPath { 的NSDictionary * grammarInfo = [grammarArray的cellForRowAtIndexPath:行]。 }' – lakerka