【发布时间】:2010-04-15 12:48:56
【问题描述】:
如何在屏幕外创建/准备一个 CALayer,以便在显示页面时,它所要做的就是显示准备好的图层?
【问题讨论】:
标签: iphone cocoa-touch core-graphics
如何在屏幕外创建/准备一个 CALayer,以便在显示页面时,它所要做的就是显示准备好的图层?
【问题讨论】:
标签: iphone cocoa-touch core-graphics
将您的内容渲染到 CGBitmapContext 中,从中拉出 CGImageRef 并将其设置为 CALayer 的内容。查看Creating a Bitmap Graphics Context 的大部分示例代码。
但是,如果您的真正问题是您的drawInContext: 太慢,您应该首先考虑将其分解,以便在数据更改时预先计算所有内容,并且只在drawInContext: 中进行绘图。这通常是更好的方法。不要预渲染图层本身;预先计算快速渲染图层所需的一切。但是对于非常复杂的绘图,CGImageRef 方法很有用。
【讨论】: