我在工具栏中有一个带有刷新按钮的UITableView。
如果TableView停止,我按下刷新按钮调用reloadData
一切正常。
但是,如果我在tableview停止之前滚动tableview并按下刷新按钮,应用程序将崩溃并显示以下消息:
-[NSMutableArray objectAtIndex:]: index 31 beyond bounds for empty array'
我认为通过滚动,app正在尝试构建单元格,读取reloadData
清除的数组。
我试图在reloadData
之前停止滚动,但它不起作用。
有什么想法吗?
答案 0 :(得分:1)
这显然不是这个问题的解决方案,因为您还没有发布任何代码!
但是,我想知道你为什么要在滚动时刷新数据?在可用性方面,我认为用户也不会这样做。我猜您只是在某些情况下测试视图,以便您的应用程序不会崩溃!
我建议您在滚动tableView时使UIButton
处于非活动状态。
myButton.enabled = NO;
// after scrolling you can set it to YES.
我真的不相信用户想要在tableView
滚动时刷新表格,如果他们不小心按下它,我认为这一小段代码可以解决问题。