iOS tableView图片未知宽高加载优化 之 runloop
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iOS tableView图片未知宽高加载优化 之 runloop相关的知识,希望对你有一定的参考价值。
参考技术A 前言demo: https://github.com/1872784520/ZLMTableViewOptimize
最近项目中经常遇到后台返回图片不给宽高。自己还不能去截取图片尺寸,还要求图片正常显示不要变形。
先说下思路吧:
难点: 1 图片不下来 你就拿不到宽高
2. tableview加载要预先给定高度(说什么用自动布局之类的我就不发表意见了)
解决:1. 图片未下来之前给出一个固定高度
2.图片下来之后计算出宽高然后重刷cell
3.这里冲刷的时候屏幕会一闪一闪的用户看起来会很不爽,需要用到 runloop来解决
demo: https://github.com/1872784520/ZLMTableViewOptimize
iOS 关于tableview的性能优化问题
1.cell的子视图太多,加重了cell的负担
2.加载图片的时候要选择异步加载,在子线程加载
3.避免cell的重新布局. cell的布局填充等操作 比较耗时,一般创建时就布局好。
4.不要使用clearColor,无背景色,透明度也不要设置为0
5.layoutSubviews这个方法会在点击cell ,滚动表格等情况下调用,而且调用的非常的频繁,所以这个方法中尽量不要写耗时操作,如果可能的话自定义cell尽量使用自动布局
6.tableView的RunLoop模式设置成默认的就可以不要使用NSRunLoopCommonModes,因为如果cell内部加载网络有耗时操作,会变的很卡顿
以上是关于iOS tableView图片未知宽高加载优化 之 runloop的主要内容,如果未能解决你的问题,请参考以下文章