如何将x个UIImages一起加入?

时间:2010-01-07 16:07:53

标签: iphone objective-c image-manipulation uiimage

我想将一些图像拼接在一起,图像总是被添加到上一张图像的底部。

e.g。我有图像A,B和C.我希望它们像对象一样出现在彼此之上:

A
B
C

最好的方法是什么?

谢谢!

2 个答案:

答案 0 :(得分:12)

我最后这样做了:

+ (UIImage *)joinImages:(UIImage *)im1 secondImage:(UIImage *)im2 thirdImage:(UIImage *)im3
{
//Joins 3 UIImages together, stitching them vertically
CGSize size = CGSizeMake(320, 480);
UIGraphicsBeginImageContext(size);

CGPoint image1Point = CGPointMake(0, 0);
[im1 drawAtPoint:image1Point];

CGPoint image2Point = CGPointMake(0, im1.size.height);
[im2 drawAtPoint:image2Point];

CGPoint image3Point = CGPointMake(0, im1.size.height +im2.size.height);
[im3 drawAtPoint:image3Point];

UIImage* finalImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();

return finalImage;
}

答案 1 :(得分:1)

创建一个UIView,然后添加多个UIImageView实例作为子视图。为每个子视图设置图像,您就完成了所有设置。如果您有一组固定的图像(或至少是固定的数字),您可以在InterfaceBuilder中执行所有布局。否则,只需创建一个新的UIImageView,然后在父视图上调用addSubView:。

http://developer.apple.com/iPhone/library/documentation/UIKit/Reference/UIView_Class/UIView/UIView.html#//apple_ref/occ/instm/UIView/addSubview

如果图像集高于屏幕,您将需要使用UITableView。