关于iOS开发中长按保存图片到相册

来源:互联网 发布:辽东学院网络教学平台 编辑:程序博客网 时间:2024/05/02 01:29

 我们在做一些有图片的项目中,经常需要添加用户长按保存图片的功能,本人自己整理了一些方法如下:

 // 长按保存图片

//  添加手势

        UILongPressGestureRecognizer *longP = [[UILongPressGestureRecognizeralloc]initWithTarget:selfaction:@selector(longP)];

        imageView.userInteractionEnabled =YES; // 打开交互

        [imageView addGestureRecognizer:longP];


- (void)longP{

    

    UIAlertController *con = [UIAlertControlleralertControllerWithTitle:@"提示"message:@"保存图片"preferredStyle:1];

    UIAlertAction *action = [UIAlertActionactionWithTitle:@"确定"style:0handler:^(UIAlertAction *_Nonnull action) {

        UIImageWriteToSavedPhotosAlbum(view1.image,self,@selector(imageSavedToPhotosAlbum:didFinishSavingWithError:contextInfo:),NULL); // 写入相册

    }];

 //  此处的image1为对应image的imageView 请自行修改

    UIAlertAction *action1 = [UIAlertActionactionWithTitle:@"取消"style:0handler:nil];

    

    [con addAction:action];

    [con addAction:action1];

    

    [selfpresentViewController:con animated:YEScompletion:nil];

   

}


// 完善回调

-(void)imageSavedToPhotosAlbum:(UIImage *)image didFinishSavingWithError:(NSError *)error contextInfo:(void *)contextInfo

{

    if(!error){

        UIAlertController *con = [UIAlertControlleralertControllerWithTitle:@"提示"message:@"图片保存成功!"preferredStyle:1];

         UIAlertAction *action = [UIAlertActionactionWithTitle:@"确定"style:1handler:nil];

        [con addAction:action];

        [selfpresentViewController:con animated:YEScompletion:nil];

       

        

    

    }else{

        NSLog(@"savefailed");

    }

}


0 0
原创粉丝点击