tableview顺畅滚动最佳实践迅捷

时间:2016-10-04 14:55:40

标签: ios swift tableview tableviewcell smooth-scrolling

这是一个技术问题,或关于良好实践......

我有这个应用程序,它是一个社交网络,我们有时间表。在这个时间轴中,我必须在tableview上渲染很多单元格,我这样做了:

  • 创建一个Cell(带有页眉,正文和页脚)-xib文件
  • 在这个单元格中我有一个方法:setupCell() - 用于配置内容
  • 对于每种帖子,我在这个单元的主体上实例化一个正确的视图(xib)(如PhotoPost,TextPost或VideoPost等),并配置约束来设置视图的大小。
  • 另外,我正在使用:

      tableView.estimatedRowHeight = 603
    
      tableView.rowHeight = UITableViewAutomaticDimension
    
  • 翠鸟以异步方式下载图片。

而且,最好的方法是:storyboard,xib还是代码?

所以,我的问题是我的卷轴滞后 - 我正在使用可重用的单元格,但每次tableview委托调用cellForRow时,我都需要setupCell()。

我的第一个想法: 我得到一个带有任务的post数组,然后为每个帖子创建一个单元格并将其附加到一个单元格数组,所以当调用cellForRow时,我只是从这个数组中得到正确的单元格。它会变得更好。但仍然不够(我正在iPhone 5c上测试)。 我的下一个想法是为每种帖子创建不同的单元格,并为其大小的单元格保存变量以在heighForCell方法上设置。 你认为看起来很好的解决方案?任何人都可以给我一个意见和建议吗?我提前很坦白......

1 个答案:

答案 0 :(得分:0)

在尝试了可能的解决方案后,我决定使用AsyncDisplayKit来解决我的问题,它提供了非常流畅的滚动。

http://asyncdisplaykit.org

它是完整的SDK并且具有良好的书面文档,因此易于实现。如果你正在努力解决类似的问题,我会推荐它。