objective-c - UITableView reloadData在滚动期间崩溃

标签 objective-c uitableview crash scroll reloaddata

我在工具栏上有一个带有刷新按钮的UITableView。
如果TableView停止并且我按下刷新按钮并调用reloadData,则一切正常。
但是,如果我滚动表 View 并在表 View 停止之前按刷新按钮,则应用程序将崩溃,并显示以下消息:
-[NSMutableArray objectAtIndex:]: index 31 beyond bounds for empty array'
我认为,通过滚动,应用程序正在尝试构建读取reloadData清除的数组的单元格。

我试图在reloadData之前停止滚动,但是它不起作用。
任何的想法?

最佳答案

这显然不是解决此问题的方法,因为您尚未发布任何代码!

但是,我想知道为什么您要在滚动时刷新数据?从可用性的角度来看,我也不认为用户会这样做。我猜您只是在某些情况下测试 View ,以便您的应用程序不会崩溃!

我建议您在滚动tableView的同时滚动UIButton使其不 Activity 。

myButton.enabled = NO;

// after scrolling you can set it to YES.

我真的不相信用户会在tableView滚动时刷新表,并且如果他们不小心按了它,我认为很少的代码就能解决问题。

关于objective-c - UITableView reloadData在滚动期间崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7700867/

相关文章:

objective-c - Objective-c 中的正则表达式无法按预期工作

objective-c - 如何用cocos2d正确处理此NSString?

ios - ShareKit 导致我的 iOS 应用程序崩溃?

带有三元运算符的 Swift UITableView numberOfRowsInSection

ios - 通知 UITableViewCell tableview 正在滚动的最佳方法是什么

ios - 使用自定义 UITableViewCells 并使用带有 Swift 的数组复制它们

ios - 如何跟踪 iOS 崩溃的确切问题

objective-c - 使用 HTTP Post 发送和接收字符串

iOS布局: How to keep a button in the middle an image?

objective-c - 是否有任何理由修改 iOS 应用程序中的 main.m 文件?