实现自定义的 UITableViewCell 时候,对于其 subViews ,以前都是使用计算 frame 值来定位的
而最近,学习使用 Masonry ,感觉好方便,写得也好爽啊,于是现在都倾向于使用 Masonry
但问题来了,当使用 Masonry 布局的 Demo 运行在真机上的时候, table view 快速滚动的时候会出现一卡一卡的
然后,看到这篇文章: http://www.cocoachina.com/ios/20160115/15001.html
里面说到了自动布局的缺点:
AutoLayout 相对低效的原因是隐藏在底层的命名为” Cassowary “的约束求解系统。如果布局中子视图越多,那么需要求解的约束也越多,进而返回 cell 给 UITableView 所花的时间也越多。
哪一个更快呢:使用少量的值来执行基本的数学计算,还是找一个求解大量线性等式或不等式的系统么?现在想像一下,用户想要快速地滑动,每个 cell 的自动布局也执行着疯狂的计算。
所以,在这里想问一下:
你们自定义 cell 的时候,用自动布局还是直接计算 frame 呢?
如果使用自动布局,是否有出现卡顿的问题?如果有?又是怎么解决,还是说注定会卡顿?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.