【学习ios之路:UI系列】实现将图片保存到IOS自带的Photo Album中

具体功能:

   在一个视图中有一个UIImageView,当长按UIImageView时,将UIImageView中的UIImage所代表的图片保存到PhotoAlbum中。


实现: 代码如下:self.imageView是定义的UIImageView视图属性

//长按效果
- (void)longPanGesture {
    UILongPressGestureRecognizer *longGesture = [[UILongPressGestureRecognizer alloc] initWithTarget:self 
                                                              </span>action:@selector(longPanGesture:)];
    [self.imageView addGestureRecognizer:longGesture];
    longGesture.minimumPressDuration = 4;
    [longGesture release];
}
相应事件:longPanGesture方法实现

- (void)longPanGesture:(UILongPressGestureRecognizer *)longGesture {
    if (longGesture.state == UIGestureRecognizerStateBegan) {
        UIImageWriteToSavedPhotosAlbum([self.imageView image], nil, nil,nil);
        UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"存储照片成功"
                              message:@"照片已存储于图片库中" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil];
        [alert show];
        [alert release];
    }
}
UIImageWriteToSavedPhotosAlbum方法

 UIImageWriteToSavedPhotosAlbum是UIKit框架中的一个函数。
这里说一下后面三个参数的含义:
void UIImageWriteToSavedPhotosAlbum (
   UIImage  *image,
   id       completionTarget,
   SEL      completionSelector,
   void     *contextInfo
);
/*
*id是target对象
*sel是selector.即target对象上的方法名
*contextInfo是任意指针,会传递到selector定义的方法上。
*一般是当完成后调用方法时使用,或者在完成时出错的处理。
*/

原文:地址

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。