嘿,我有一个视图,其中放置了一些项目和平铺的背景图像。我已将它的backgroundColor设置为CGPatternRef。我试图获得它,所以我可以与我的图层中的内容一起缩放背景图像。我已经将背景图片缩放得很好,我似乎无法弄清楚在缩放比例发生变化时如何进行更新。这里是我的drawCallback动态缩放CGPatternRef
static void drawPatternImage (void *info, CGContextRef ctx)
{
CGImageRef image = (CGImageRef) info;
CGContextDrawTiledImage(ctx, CGRectMake(0,0, CGImageGetWidth(image)*scaleValue, CGImageGetHeight(image)*scaleValue), image);
}
绘制图像我如何期望,但是当我改变刻度值,然后调用setNeedsDisplay我的层上,回调方法不会被再次调用,我的背景是不更新。这是解决这个问题的最好方法吗?或者,在我看来,是否有更高效的方式绘制可伸缩的图元图像。我实现了- (void)drawLayer:(CALayer *)layer inContext:(CGContextRef)ctx并从那里调用了CGContextDrawTiledImage,但是当缩放我的视图时,更新非常不连贯。
任何指导,将不胜感激。
感谢