Ios 清除使用drawInRect渲染的图像

Ios 清除使用drawInRect渲染的图像,ios,drawrect,Ios,Drawrect,我有一个设置,我需要渲染3个图像并混合它们。我在drawRect中使用这个 [self.backImage.image drawInRect:self.backImage.frame blendMode:kCGBlendModeNormal alpha:1.0]; 我在UIImageView上进行一些转换,然后调用setNeedsDisplay,它将父视图标记为触发drawRect。当drawRect再次启动时,它似乎会再次渲染图像,而不会删除旧图像 我在父视图和图像视图上设置了ClearCo

我有一个设置,我需要渲染3个图像并混合它们。我在drawRect中使用这个

[self.backImage.image drawInRect:self.backImage.frame blendMode:kCGBlendModeNormal alpha:1.0];
我在UIImageView上进行一些转换,然后调用setNeedsDisplay,它将父视图标记为触发drawRect。当drawRect再次启动时,它似乎会再次渲染图像,而不会删除旧图像

我在父视图和图像视图上设置了
ClearContextBeforeDrawing
,但似乎没有解决问题


如何在清除下一个图像之前清除旧图像?这几乎就像使用drawInRect渲染图像时,图像被遗忘一样。

您是否尝试过使用
kCGBlendModeClear
绘制图像?这应该能让你在画新的之前把事情弄清楚

或者,您可以尝试在屏幕外位图上下文中进行绘图。然后在
drawRect
中,将此屏幕外缓冲区复制到视图中。这可能会成功地覆盖旧图像


编辑:基本上,在绘制新内容之前,您将使用
kCGBlendModeClear
作为橡皮擦。

谢谢。我将尝试清除KCGBL模式。