reloadData无法正常工作 - 可疑单元格的reuseIdentifier

时间:2010-03-24 04:55:22

标签: iphone uitableview

我有一个视图控制器,它以模态方式呈现,并在模态的父视图控制器(表视图)中更改了一些影响数据的数据。

当父视图重新出现时,我调用tableview的reloadData方法。我已经确认此代码会受到突破点的影响。我的麻烦是,reloadData无法正常工作。这是踢球者 - 如果我在 - (UITableViewCell *)cellForRowAtIndexPath:(NSIndexPath *)indexPath方法中不使用reuseIdentifiers,则数据会正确重新加载。似乎应该责备reuseIdentifier。

我真的想继续为我的单元格使用reuseIdentifier - 我该如何使用?

2 个答案:

答案 0 :(得分:1)

知道了,你是对的,这不是reuseIdentifer。

我正在将内容分配嵌套在单元格分配的正下方,如下所示:

// Dequeue or create a cell of the appropriate type.
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
    cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];

    cell.accessoryType = [targetRow.children count] ? UITableViewCellAccessoryDisclosureIndicator : UITableViewCellAccessoryNone;

// Configure the cell.
cell.textLabel.text = [NSString stringWithFormat: targetRow.title];
}

由于找到了出列的单元格,因此内容不会更新。

我把它改成了这一切,现在一切都很好......

// Dequeue or create a cell of the appropriate type.
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
    cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];

}

cell.accessoryType = [targetRow.children count] ? UITableViewCellAccessoryDisclosureIndicator : UITableViewCellAccessoryNone;

// Configure the cell.
cell.textLabel.text = [NSString stringWithFormat: targetRow.title];

答案 1 :(得分:0)

问题不太可能与重用标识符有关。请为您的tableView:cellForRowAtIndexPath:方法发布代码。