使用CGContextDrawImage,图像显示混乱

时间:2015-12-03 07:22:07

标签: ios objective-c core-text cgcontextdrawimage

UIImage *image = [[UIImage alloc] initWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:imageData.imageUrl]]];
CGContextDrawImage(context, imageData.imagePosition, image.CGImage);

enter image description here

这种方式是正确的。

但是,当异步请求图像数据时,图像显示混乱。 这段代码:

dispatch_async(dispatch_get_global_queue(0, 0), ^{
            UIImage *image = [[UIImage alloc] initWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:imageData.imageUrl]]];
            dispatch_async(dispatch_get_main_queue(), ^{
                CGContextDrawImage(context, imageData.imagePosition, image.CGImage);
            });
        });

显示混乱:

enter image description here

0 个答案:

没有答案