我最近检查项目“演示照片局”发现here。保存多个自定义的UIImageViews
这是将UIImageView添加到添加了UIGestureRecognizers的屏幕的简单演示...允许用户操作各种UIImageView。
我加的观点,像这样:
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
UIImage *image = [info objectForKey:@"UIImagePickerControllerOriginalImage"];
imageview = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, image.size.width, image.size.height)];
imageview.userInteractionEnabled = YES;
[imageview setImage:image];
UIPinchGestureRecognizer *pinchRecognizer = [[UIPinchGestureRecognizer alloc] initWithTarget:self action:@selector(scale:)];
[pinchRecognizer setDelegate:self];
[imageview addGestureRecognizer:pinchRecognizer];
UIRotationGestureRecognizer *rotationRecognizer = [[UIRotationGestureRecognizer alloc] initWithTarget:self action:@selector(rotate:)];
[rotationRecognizer setDelegate:self];
[imageview addGestureRecognizer:rotationRecognizer];
UIPanGestureRecognizer *panRecognizer = [[UIPanGestureRecognizer alloc] initWithTarget:self action:@selector(move:)];
[panRecognizer setMinimumNumberOfTouches:1];
[panRecognizer setMaximumNumberOfTouches:1];
[panRecognizer setDelegate:self];
[imageview addGestureRecognizer:panRecognizer];
[self.view addSubview:imageview]; }
我甚至可以保存像这样的观点:
NSUserDefaults * defaults = [NSUserDefaults standardUserDefaults];
[defaults setObject:[NSKeyedArchiver archivedDataWithRootObject:imageview] forKey:@"imageViewSaved"];
现在我的问题:下面的方法仅保存最后的ImageView添加到屏幕。任何人都知道如何保存屏幕上的所有图像...如果用户添加多个图像?
你不能只是做一样的,你已经与第一ImageView的呢?我不太确定,如果我完全理解您的问题,您是否问如何将多个imageView存档添加到您的视图? –
我提供的例子允许用户每次从他们的照片库中选择照片时在屏幕上添加一个uiimageview。所有这些图像浏览本质上都是“imageview”(见上面的代码)。我很难弄清楚如何区分这些不同的图像视图。目前它只保存添加的最新视图...即使其他uiimageviews也在屏幕上。我想我每次选择一张附加照片时都可以在新的图像视图中编码,但是我必须限制允许添加多少个uiimageviews。 – jccotant