IOS

IOS中TableView中经常用到上拉刷新数据,但是加载之后TableView不经过处理的话界面现实的数据还是原来的样子,不会将新加载的数据上推到当前显示界面上端,需要用户上拉才能浏览加载的内容。
所以解决办法就是加载数据完成后自动刷新tableView,使其偏移一定距离,解决办法如下:

  // 在新加载的数据加入到data数组之前先取得没有添加数据时data的数据量 data.count;
  NSInteger count = self.data.count;
// 设置加载数据后数据显示位置 使刷新出的数据显示在上排
  NSInteger position = count>0 ? count-1 : count;                
  [self.tableView scrollToRowAtIndexPath:[NSIndexPath 
atScrollPosition:UITableViewScrollPositionTop 
  animated:YES];

原理很简单,
第一步:在新加载的数据加入到data数组之前先取得没有添加数据时data的数据量,这样就知道加数据之前最后一个数据位置在哪
第二步:判断,如果新加最后一个数据位置大于0 就将界面刷新到最后一个之前,否则就是cell等于0 就直接刷新到0位置就可以了

版权声明:本文为博主原创文章,未经博主允许不得转载。

原文地址:https://www.cnblogs.com/yuqingzhude/p/4927456.html