我在看一个 2011 年关于 UIKit 渲染的 WWDC 视频,这一部分讲述了 UIImageView 如何比使用 drawRect 更有效。这是 session 显示的示例:
我不太清楚为什么使用 drawRect 但不使用 UIImageView 将图像拉伸(stretch)到 320x200 需要额外的 250 Kbs? UIImageView 不需要相同数量的额外像素来调整图像大小和渲染图像吗?
有人可以解释一下吗?
最佳答案
我在观众中,我相信重点是,如果您使用 Quartz 创建新图像,然后绘制该图像,则必须首先将图像渲染到上下文中,然后再绘制该上下文。如果您使用 UIImageView 方法对小图像进行切片然后渲染,iOS 就会知道多次平铺小图像,因此永远不会创建一个巨大的上下文 (CGImage)。
关于iphone - iOS UIImageView vs drawRect 图像拉伸(stretch),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11702312/