美文网首页
判断tableviewcell在可视区域的几种方法

判断tableviewcell在可视区域的几种方法

作者: LTSimple | 来源:发表于2017-10-12 18:15 被阅读91次
  • (NSArray*)visibleCells;
    UITableview的方法,这个最直接,返回一个UITableviewcell的数组。
    对于自定制的cell,之后的处理可能稍微繁琐些。
    • (NSArray*)indexPathsForVisibleRows;
      UITableview的又一个方法,这个比较好用了,返回一个NSIndexPath的数组,可以直接用indexpath.row去调你的table_related_Array里的数据了。比较方便用于自定制的cell。
    • (CGRect)rectForRowAtIndexPath:(NSIndexPath*)indexPath;

CGRect cellR = [myTV rectForRowAtIndexPath:indx];

如果 myTV.contentOffset.y - cellR.origin.y < myCell.frame.size.height
或者 cellR.origin.y - myTV.contentOffset.y >myTV.size.height

这个时候myCell应该是不在myTV的可视区域了。
这个方法可以用在代理回调较多的设计中。

另:
1和2在自动根据数据伸长的cell中好像不太准确。

相关文章

网友评论

      本文标题:判断tableviewcell在可视区域的几种方法

      本文链接:https://www.haomeiwen.com/subject/gcpoyxtx.html