缓存cell高度开源代码阅读:UITableView-FDTemplateLayoutCell

有木有遇见过cell的高度千差万别毫无规律,你怎么计算cell的高度呢?好吧,我相信你能够计算出来,或者你可能用autolayout的特性得出fit后的size,但是,你有木有遇见过那个tableview长长的长长的,长到你觉得tableview没有丝般的顺滑呢?

在优化tableview的性能时,如果你能缓存下cell的高度,你离成功近了那么一点。生气

好了,我稍微介绍下这个框架。地址:https://github.com/forkingdog/UITableView-FDTemplateLayoutCell点击打开链接

这个框架是根据indexPath作为key值进行缓存。

然后第一次计算cell的高度的时候,调用了

    CGSize fittingSize = [cell.contentView systemLayoutSizeFittingSize:UILayoutFittingCompressedSize];

利用autolayout的计算,获取size。

但是,你设想一下有木有啥不完美的地方。

当你的tableview偶尔会删除cell 的时候,那么高度岂不是乱了吗?

对的,所以喽,你可以在你的数据业务代码的地方缓存cell高度即可。所以这个框架是非常值得借鉴的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章