1. 程式人生 > >解決iOS UITableView reloadData 時閃屏的問題

解決iOS UITableView reloadData 時閃屏的問題

-(CGFloat)tableView:(UITableView *)tableView estimatedHeightForRowAtIndexPath:(NSIndexPath *)indexPath{
    return UITableViewAutomaticDimension;

}

這個方法是給tableview預設加一個預估的cell值,在iOS11以下可以使用這個方法。裡面返回UITableViewAutomaticDimension,如果在iOS11上出了reload閃屏,在建立tableview的時候使用

if(@avalible(IOS,*)){

     tableview.estimatedRowHeight = 0

    }

就行了

產生的原因是在建立tablecell的時候系統給加了一個預設預估的cell高度,每次reload都用這個高度計算cell,禁用或者設為0就行了