Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/107.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 调用tableView reloadData时出错:更新后现有节中包含的行数_Ios_Objective C_Uitableview - Fatal编程技术网

Ios 调用tableView reloadData时出错:更新后现有节中包含的行数

Ios 调用tableView reloadData时出错:更新后现有节中包含的行数,ios,objective-c,uitableview,Ios,Objective C,Uitableview,我以前在人们的问题中看到过这个错误,但我找到的唯一答案是我应该调用reloadData。但是,这似乎正是我得到错误的时候 因此,我在一个名为itemArray的数组中为tableView提供了一组数据。在NSURLRequest完成之前,它是空的,然后当它返回时,第2节中的行数被更新为[itemArray count] 奇怪的是,错误并不总是被抛出。它是非常间歇性的,所以我很难分辨出哪里出了问题 有人知道这个错误的共同原因吗?我总是在数据源更改时调用reloadData。我可以提供任何代码来帮助

我以前在人们的问题中看到过这个错误,但我找到的唯一答案是我应该调用reloadData。但是,这似乎正是我得到错误的时候

因此,我在一个名为itemArray的数组中为tableView提供了一组数据。在NSURLRequest完成之前,它是空的,然后当它返回时,第2节中的行数被更新为[itemArray count]

奇怪的是,错误并不总是被抛出。它是非常间歇性的,所以我很难分辨出哪里出了问题

有人知道这个错误的共同原因吗?我总是在数据源更改时调用reloadData。我可以提供任何代码来帮助您帮助我吗

准确错误:

'NSInternalInconsistencyException',原因:'无效更新:无效 第2节中的行数。表中包含的行数 更新后的现有节(100)必须等于 更新(0)之前该节中包含的行,加号或减号 从该节插入或删除的行数(插入0, 0)并加上或减去移入或移出的行数 该部分(0移入,0移出)。'


不看代码很难说,但是itemArray是否已初始化?可能在viewDidLoad中初始化它,看看错误是否消失。

您正在错误地调用
BeginUpdate
EndUpdate
。如果您正在调用
reloadData
,则不应使用开始和结束更新API。

确切错误是什么?已更新。不太清楚它是什么意思。是的,它已经初始化了。无论如何,在方法中,我通过使用if(itemArray&&itemArray.count)return itemArray.count;否则返回0;你不需要这些支票。如果数组为零,则计数将为0。我从未调用过BeginUpdate或EndUpdate。@JoshDG嗯,有东西在调用它们,API正在抱怨,因为它没有被正确告知更新,但它被调用了。