我是UIImageView
的子类,用于创建基于图块的应用程序。基本上,我正在拍摄单个图像文件并将其分解成碎片,然后将碎片分配到我的图块(UIImageViews
),以便可以单独操作它们。
获取图像的一部分并使用它来绘制UIImageView
的最佳方法是什么?我考虑过覆盖drawRect
并使用CGAffineTransform
,但似乎应该有一种更简单的方法来执行此操作,可能是通过为CGRect
指定UIImage
传递给UIImageView
,但我没有看到这个API。
答案 0 :(得分:11)
我们走了:
UIImage* img = [UIImage imageNamed:@"myImage.jpg"];
CGRect imgFrame = CGRectMake(x, y, tileWidth, tileHeight);
CGImageRef imageRef = CGImageCreateWithImageInRect([img CGImage], imgFrame);
UIImage* subImage = [UIImage imageWithCGImage: imageRef];
CGImageRelease(imageRef);