如何將圖片保存到系統相冊及從系統相冊選擇圖片

將圖片保存到系統相冊

// 保存圖片到系統相冊裏    
    UIImageWriteToSavedPhotosAlbum(image, self, @selector(image:didFinishSavingWithError:contextInfo:), nil);
    // image:保存的圖片
    // completionTarget:保存完成的監聽者
    // completionSelector:保存完成的時候調用監聽者的方法

}

// 保存圖片完成的時候調用,必須調用系統的這個方法,不能夠自定義別的方法
- (void)image:(UIImage *)image didFinishSavingWithError:(NSError *)error contextInfo:(void *)contextInfo
{
    if (error) {
        [MBProgressHUD showError:@"保存失敗"];       
    }else{
        [MBProgressHUD showSuccess:@"保存成功"];
    }
}

從系統相冊選擇圖片

@interface ViewController () <UINavigationControllerDelegate, UIImagePickerControllerDelegate>
...
@end

// 選擇照片
- (IBAction)photo:(UIBarButtonItem *)sender {
    // 建立照片選擇控制器
    UIImagePickerController *imagePickerVc = [[UIImagePickerController alloc] init];
    // 設置數據源
    imagePickerVc.sourceType = UIImagePickerControllerSourceTypeSavedPhotosAlbum; // 系統相冊
    // 設置代理
    imagePickerVc.delegate = self;
    
    //modal - 進入相冊界面
    [self presentViewController:imagePickerVc animated:YES completion:nil];
    
}
#pragma mark - <UIImagePickerControllerDelegate>
// 用戶選擇照片的時候調用
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info{
    // 獲取用戶選擇的照片
    UIImage *image = info[UIImagePickerControllerOriginalImage];
    // modal - 退出相冊界面
    [self dismissViewControllerAnimated:YES completion:nil];
    
    _drawView.image = image;
    
}
相關文章
相關標籤/搜索