问题:
关于tableView的contentOffset设置上面内筒偏移量和下面代码同时设置的时候的bug问题:
机型和系统:
苹果11.0以上系统已经测试过有这个问题,机型iPhone的plus系列机型,模拟器机型测试的。
场景:
1、self.tableView.contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever和 self.tableView.contentInset = UIEdgeInsetsMake(height, 0, 0, 0) 同时设置的时候,cell随意添加一个按钮,和按钮点击事件,再给tableView添加一个mj_refresh的头部刷新事件,结果在下拉刷新后点击按钮无法响应按钮的selector方法。排除不是mj_refresh的bug,可能也有影响,不完全排除。
当我设置完代码如果代码后,操作上面的描述,按钮点击没反应。
if (@available(iOS 11.0, *)) {
self.tableView.contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever;
}else{
self.automaticallyAdjustsScrollViewInsets = NO;
}
self.tableView.contentInset = UIEdgeInsetsMake(177, 0, 0, 0);
备注:这种场景当时是为了给tableView头部添加一个空白,做一个头部动画准备的。
2、测试,添加按钮,上拉然后头部回去,点击按钮无反应;如果上推下tableView按钮响应没问题,经过打印响应链没问题。其中也做了空项目测试,也有这个问题,猜测苹果bug。
3、但是tableView下面的内容很长的时候没问题。当时提测两个cell,第一个高度是110,第二个是183。
4、解决,替换headerView解决。