使用mjrefresh遇到的坑爹bug

来源:互联网 发布:微信订餐软件 编辑:程序博客网 时间:2024/05/17 22:32

在下拉刷新的方法中,如果写成这样:

self.objectArray.removeAllObjects()

self.tableView.mj_header.endRefreshing()

self.objectArray.addObject......

self.tableView.reloadData()


会出现如下BUG:

Terminating app due to uncaught exception 'NSRangeException', reason: '*** -[__NSArrayM objectAtIndex:]: index 11 beyond bounds for empty array'



解决方法很简单,把第一句和第二句换个位置就可以了

self.tableView.mj_header.endRefreshing()

self.objectArray.removeAllObjects()

self.objectArray.addObject......

self.tableView.reloadData()


原因估计是endRefreshing()实现代码里记录了之前tableView的行数,导致数组越界,先removeAllObjects后endRefreshing就会报错

0 0
原创粉丝点击