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的主要内容,如果未能解决你的问题,请参考以下文章

iOS之性能优化·UITableView深度优化

iOS 关于tableview的性能优化问题

TableView 加载图片优化(滑动不加载图片思路)

图片 + 未知宽高 + 垂直居中

未知宽高元素如何在一个div中上下左右居中对齐

iOS开发之性能优化