保存图片到相册 iphone UIImageWriteToSavedPhotosAlbum 保存图片

时间:2022-04-15 05:16:05

转载自:http://www.cnblogs.com/85538649/archive/2011/12/05/2276901.html

有时候你的应用需要将应用中的图片保存到用户iPhone或者iTouch的相册中。 可以使用UIKit的这个类方法来完成。

1
2
3
4
5
6
void UIImageWriteToSavedPhotosAlbum (
   UIImage  *image,
   id       completionTarget,
   SEL      completionSelector,
   void     *contextInfo
);

image
要保存到用户设备中的图片

completionTarget
当保存完成后,回调方法所在的对象

completionSelector
当保存完成后,所调用的回调方法。 形式如下:

1
2
3
- (void) image: (UIImage *) image
    didFinishSavingWithError: (NSError *) error
    contextInfo: (void *) contextInfo;

contextInfo
可选的参数,保存了一个指向context数据的指针,它将传递给回调方法。

比如你可以这样来写一个存贮照片的方法:

1
2
3
4
5
// 要保存的图片
  UIImage *img = [UIImage imageNamed:@"ImageName.png"];  
 
  // 保存图片到相册中
  UIImageWriteToSavedPhotosAlbum(img, self, @selector(image:didFinishSavingWithError:contextInfo:), nil);

回调方法看起来可能是这样:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
- (void)image:(UIImage *)image didFinishSavingWithError:(NSError *)error 
             contextInfo:(void *)contextInfo
  {
    // Was there an error?
    if (error != NULL)
    {
      // Show error message...
 
    }
    else  // No errors
    {
      // Show message image successfully saved
    }
  }