说一下问题吧,Xcode10 向下兼容到iOS8,iOS10以下版本会出现tableview向上或者向下偏移很是烦人。
于是山寨了一个解决方案 该方法适用于向上偏移
-(void) tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath
{if([indexPath row] == ((NSIndexPath*)[[tableView indexPathsForVisibleRows] lastObject]).row){dispatch_async(dispatch_get_main_queue(), ^{if (self.freshNumber == 0){[tableView setContentOffset:CGPointMake(0,-1)animated:NO];}self.freshNumber ++;});}
}
// 上面的代理方法一般不常用 但是可以解决一些其他问题,所以发出来。
//来个完美方案
[tableView setTableFooterView:[[UIView alloc] initWithFrame:CGRectMake(0, 0, 0, CGFLOAT_MIN)]];
[tableView setTableHeaderView:[[UIView alloc] initWithFrame:CGRectMake(0, 0, 0, CGFLOAT_MIN)]];