我使用以下代码从精灵中获取图像。除了 iPhone 4(高清版)外,它在任何地方都可以正常工作。
- (UIImage *)croppedImage:(CGRect)rect {
CGImageRef image = CGImageCreateWithImageInRect([self CGImage], rect);
UIImage *result = [UIImage imageWithCGImage:image];
CGImageRelease(image);
return result;
}
iPhone 4 会自动加载高清版本的图像 (sprite@2x.png) 而不是 sprite.png。原始图像的比例为 2,但生成的图像的比例为 1,尺寸错误。
考虑到 iPhone 3G[s] 和 iPhone 4 的不同规模,如何处理这种行为?
我已经阅读了这个文档,但是关于这里的使用CGImageCreateWithImageInRect什么也没说。