我可以使用以下代码从 Core Animation 层创建 UIImage:
- (UIImage*)contentsImage;
{
UIGraphicsBeginImageContext([self bounds].size);
[self renderInContext:UIGraphicsGetCurrentContext()];
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return image;
}
此代码在我的 CALayer 派生类中。我遇到的问题是我有两个 CAShapeLayers,它们是我的图层的子图层,它们不会渲染到结果图像。如果我将标准 CALayers 添加为子项,它们会得到很好的渲染。苹果文档说:
将接收器及其子层渲染到指定的上下文中。
它还说它从 iPhone OS 2.0 开始就可用。想知道我是否遗漏了什么,或者我是否应该提交雷达。
有什么想法可以阻止孩子 CAShapeLayers 被图像吸引吗?
谢谢。