渲染层屏幕外

渲染层屏幕外

问题描述:

如何创建/准备屏幕外的CALayer,以便在显示页面时只需显示准备好的图层?渲染层屏幕外

将您的内容渲染到CGBitmapContext中,将CGImageRef拉下来,并将其设置为CALayer的内容。看一看Creating a Bitmap Graphics Context例如大部分代码。

但是,如果您真正的问题是您的drawInContext:速度太慢,您应该首先考虑打破这一点,以便在数据更改时预先计算所有内容,并仅在drawInContext:中进行绘图。这通常是更好的方法。不要预先渲染图层本身;预先计算您需要快速渲染图层的所有内容。但对于非常复杂的绘图,CGImageRef方法很有用。