0

我有一个带有标签、指示器视图等的 UITableViewCell 子类。我需要在从网络上检索数据时更新它(特别是我有一个结果数标签)。

我用它来尝试重新加载单元格,但它不起作用。我知道正在调用 cellForRowAtIndexPath,并且数据源本身的值已更新。

[self.myFriendsTbl beginUpdates];
[self.myFriendsTbl reloadRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationNone];
[self.myFriendsTbl] endUpdates];
4

3 回答 3

2
[self.myFriendsTbl reloadData];

This will force each visible UITableViewCell to be reloaded. cellForRowAtIndexPath will be called for each of them.

于 2013-02-22T12:27:17.210 回答
2
[self.myFriendsTbl reloadData];
于 2013-02-22T12:28:52.370 回答
0

您不需要调用 beginUpdates 或 endUpdates,因为您没有删除或插入单元格。

只需更改 DataSource 中特定行的数据并调用

[self.tableView reloadRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationLeft];

正如你所做的那样。

如果它不起作用,则可能您没有更改正确的行,或者您的 indexPath 不是正确的。显示更多代码来检查。例如,使用“UITableViewRowAnimationLeft”之类的某种动画将帮助您查看正在更改的单元格。

于 2013-02-22T12:46:39.977 回答