项目中遇到了个问题,下拉刷新在iOS 11中出现无法停止的bug。问题的原因主要是苹果在iOS11后将Self-Sizing默认打开。
原因:也就是iOS11中UITableView在reloadData时contentOffset发生了改变,这时候MJRefresh监听了contentOffset的变化,就导致再一次的调用上拉加载,变成了循环调用。
解决办法如下:
// iOS11下不想使用Self-Sizing的话,可以通过以下方式关闭:
//添加以下代码
if (IS_IOS_11) {
self.tableView.estimatedRowHeight = 0;
self.tableView.estimatedSectionHeaderHeight = 0;
self.tableView.estimatedSectionFooterHeight = 0;
}
网友评论