0

我在用

UIImage *image = @"some image"

[图像 drawInRect:CGRectMake(50,50, 100, 100)];

我如何只检查绘制图像

if(cgrect(50, 50, 100, 100) doesn't have an image){
        // only then draw the image

  }
4

1 回答 1

2

Quartz(iOS 上的 2D 图形系统)使用画家的图形合成模型,并且在大多数情况下绘制到单层缓冲区。

这意味着一旦内容被绘制到图形上下文中,它就会被展平到上下文中,并且它的像素成为场景的一部分。把它想象成画一幅画:一旦你把颜料放在画布上,它就会覆盖下面的任何东西,并且与那里已经存在的颜料密不可分。

为了确定图像之前是否在图形上下文中绘制,您必须在上下文之外维护一些状态(例如 a BOOL didDrawImage。)您需要做什么取决于您的目标。如果您告诉我们您要达到的目标,我们或许可以为该问题提供替代解决方案。

于 2012-08-24T13:23:03.190 回答