iOS 11+ MJRefresh的bug
2018-12-23 本文已影响11人
Smallwolf_JS
之前的estimatedSection******Height
默认为0,现在不为0了,直接写第一部分代码也可以,或者不设置estimatedSection
,把代码2两个代理补上也行,看自己选择,本质原因就是因为默认值问题,这两种方式都可以解决这个默认值问题
代码1
if (@available(iOS 11.0, *)) {
self.tableView.contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever;
// est和代理 可选1个
self.tableView.estimatedSectionFooterHeight = 0;
self.tableView.estimatedSectionHeaderHeight = 0;
} else {
self.automaticallyAdjustsScrollViewInsets = NO;
}
代码2
- (UIView *)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section
{
return nil;
}
- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
{
return nil;
}
cell高度出现高度重合问题
self.tableView.estimatedRowHeight = 0;
1
default is UITableViewAutomaticDimension, set to 0 to disable
当这时碰到MJRefresh的MJRefreshAutoNormalFooter
的时候,如果你没有写上面的代码,你就会发现你的footerRefreshBlook会不停的调用,因为mjrefresh认为你在不停的上拉。