首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >reloadData不工作-可疑单元的reuseIdentifier

reloadData不工作-可疑单元的reuseIdentifier
EN

Stack Overflow用户
提问于 2010-03-24 12:55:22
回答 2查看 1.7K关注 0票数 1

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

当父视图重新出现时,我调用tableview的reloadData方法。我已经确认这段代码会受到一个断点的攻击。我的问题是,reloadData不工作。这里有一个要点--如果我没有在- (UITableViewCell *)cellForRowAtIndexPath:(NSIndexPath *)indexPath方法中使用reuseIdentifiers,数据就会正确地重新加载。看起来reuseIdentifier是罪魁祸首。

我真的想继续在我的单元中使用reuseIdentifier --我该怎么做呢?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-03-24 13:08:14

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

票数 0
EN

Stack Overflow用户

发布于 2010-03-24 13:24:09

我明白了,你是对的,不是reuseIdentifer。

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

代码语言:javascript
复制
// 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];
}

因为找到了出列的单元,所以内容不会被更新。

我把它改成这样,现在一切都好用了……

代码语言:javascript
复制
// 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
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2505416

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档