1:原文摘自:http://mobile.51cto.com/iphone-278615.htm
iPhone应用程序 将图片保存到相册实例是本文要介绍的内容,主要是以代码来实现本文要表现的内容,进入话题。有时候你的应用需要将应用中的图片保存到用户iPhone或者iTouch的相册中。 可以使用UIKit的这个类方法来完成。
- void UIImageWriteToSavedPhotosAlbum (
- UIImage *image,
- id completionTarget,
- SEL completionSelector,
- void *contextInfo
- );
- void UIImageWriteToSavedPhotosAlbum (
- UIImage *image,
- id completionTarget,
- SEL completionSelector,
- void *contextInfo
- );
image
要保存到用户设备中的图片
completionTarget
当保存完成后,回调方法所在的对象
completionSelector
当保存完成后,所调用的回调方法。 形式如下:
- - ( void ) image: ( UIImage *) image
- didFinishSavingWithError: ( NSError *) error
- contextInfo: ( void *) contextInfo;
contextInfo
可选的参数,保存了一个指向context数据的指针,它将传递给回调方法。
比如你可以这样来写一个存贮照片的方法:
- // 要保存的图片
- UIImage *img = [ UIImage imageNamed:@"ImageName.png" ] ;
- // 保存图片到相册中
- UIImageWriteToSavedPhotosAlbum( img, self, @selector ( image:didFinishSavingWithError:contextInfo:) , nil ) ;
回调方法看起来可能是这样:
- (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
- }
- }
- - (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
- }
- }
保存当前视图:
- #import <QuartzCore/QuartzCore.h>
- UIGraphicsBeginImageContext(currentView.bounds .size ); //currentView 当前的 view
- [currentView. layer renderInContext: UIGraphicsGetCurrentContext()];
- UIImage *viewImage = UIGraphicsGetImageFromCurrentImageContext();
- UIGraphicsEndImageContext();
- UIImageWriteToSavedPhotosAlbum(viewImage, nil , nil , nil );
小结:iPhone应用程序 将图片保存到相册实例的内容介绍完了,希望本文对你有所帮助!