我有一个 iOS 应用程序,简而言之,它使用 UITableView 和几个按钮来更改表格的内容。我在开发的早期遇到了一个错误,即在 reloadData 调用之前和之后的行数不一致,但后来发现我做错了什么。
然而,现在我从测试人员那里得到一份报告,说他的 iPad 1 崩溃了,查看堆栈跟踪我可以看到同样的错误,如上所述,正在发生。但所有其他 iPad 2 测试人员似乎都可以正常工作,并且他们都使用相同的数据集来填充表格。
这是我填充表格视图的方式:
[tableviewController.data removeAllObjects] //Delete the old data. Tableviewcontroller is the delegate for self.tableview
[self.tableview performSelectorOnMainThread:@selector(reloadData) withObject:nil waitUntilDone:NO];
[tableviewController setData:[newDataSetArray mutableCopy]]; //Copy over a new dataset array
[self.tableview performSelectorOnMainThread:@selector(reloadData) withObject:nil waitUntilDone:NO];
如果有人知道为什么会发生这种情况并可以指出,我将非常感激。
编辑:更多细节。在听到这个问题后,我们让测试人员删除了应用程序的本地副本,并获取最新版本。此外,他和其他测试人员都在运行 iOS 5.1.1,据我所知,唯一的不一致是硬件版本。但这没有意义:/