将图片保存在iPhone的相册中

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

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

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

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

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

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

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

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

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

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

  1.  
  2. - (void)image:(UIImage *)image didFinishSavingWithError:(NSError *)error
  3.              contextInfo:(void *)contextInfo
  4.   {
  5.     // Was there an error?
  6.     if (error != NULL)
  7.     {
  8.       // Show error message…
  9.  
  10.     }
  11.     else  // No errors
  12.     {
  13.       // Show message image successfully saved
  14.     }
  15.   }
posted @ 2010-10-22 21:43  周宏伟  阅读(1402)  评论(0编辑  收藏  举报