0

我有一个 UITableView 有几个条目,这些条目分为几个部分。如果我单击其中一个单元格,则会访问 DetailViewController。在那个 DetailViewController 中,我想使用来自所选单元格(cell.textLabel 和 cell.detailTextLabel)的数据,但我无法访问这些数据。是否有可能解决该问题,以便我可以使用 DetailViewController 从所选单元格访问 textLabels?

4

2 回答 2

2

一种方法是将两个文本值的属性添加到 DetailViewController。然后在 didSelectRowAtIndexPath 中,执行如下操作:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];

    //create your DetailViewController here
    UIViewController *detailViewController = ...

    //set the properties...        
    detailViewController.cellText = cell.textLabel.text;
    detailViewController.cellDetailText = cell.detailTextLabel.text;

    //push the detailViewController here

    [detailViewController release];
}
于 2010-02-22T16:52:23.907 回答
0

DetailViewController用单元格内容初始化。

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
    UITableViewCell *cell = [self.tableView cellForRowAtIndexPath:indexPath];
    DetailViewController *detailViewController = [[[DetailViewController alloc] initWithText:cell.textLabel.text] autorelease];
    // push
}

而不是孩子从它的父母那里阅读,让父母直接向它的孩子提供信息要干净得多。

于 2010-02-22T17:01:40.623 回答