尝试更新表视图中的行数时出错

时间:2012-09-13 15:21:19

标签: ios uitableview

我对如何在表视图中添加行感到困惑。

我有一个数组,可以定期添加值。每次使用以下代码行将新值添加到数组时,我都会尝试更新行数:

// listOfMembers if a 
[[self tableView] beginUpdates];     [tableView numberOfRowsInSection:[listOfMembers count]];
[[self tableView] endUpdates];

[[self tableView] beginUpdates];
[tableView reloadRowsAtIndexPaths:[tableView indexPathsForVisibleRows] withRowAnimation:UITableViewRowAnimationNone];
[[self tableView] endUpdates];

然而这不能改变行数..我可能误解了表的更新方式。我收到这个错误:

*** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Invalid update: invalid number of rows in section 0.  The number of rows contained in an existing section after the update (5) must be equal to the number of rows contained in that section before the update (4), plus or minus the number of rows inserted or deleted from that section (0 inserted, 0 deleted) and plus or minus the number of rows moved into or out of that section (0 moved in, 0 moved out).'

崩溃就行了:

[tableView reloadRowsAtIndexPaths:[tableView indexPathsForVisibleRows] withRowAnimation:UITableViewRowAnimationNone];

我应该如何清楚地更新我的表视图?我这样做是错误的。

1 个答案:

答案 0 :(得分:3)

好的,这个问题的答案就是简单地调用函数reloadData。例如:

[tableViewOutlet reloadData];