iOS 圖片保存到系統相冊

分類:IT技術 時間:2017-02-15
// 保存圖片
- (void)saveImage
{
    YTPictureBrowserCell *cell = [[self.collectionview visibleCells] firstObject];
    if (cell.imageview.image == nil) {
        [SVProgressHUD showErrorWithStatus:@"圖片還沒下載完"];
        return;
    }
    UIImageWriteToSavedPhotosAlbum(cell.imageview.image, self, @selector(image:didFinishSavingWithError:contextInfo:), nil);
}
// 保存圖片需調用
- (void)image:(UIImage *)image didFinishSavingWithError:(NSError *)error contextInfo:(void *)contextInfo
{
    if (error) {
        // 保存失敗
        UIAlertController *alertVC = [UIAlertController alertControllerWithTitle:@"保存失敗" message:@"請允許訪問“照片”" preferredStyle:UIAlertControllerStyleAlert];
        UIAlertAction *okAction = [UIAlertAction actionWithTitle:@"確定" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) {
            NSURL *url = [NSURL URLWithString:UIApplicationOpenSettingsURLString];
            if ([[UIApplication sharedApplication] canOpenURL:url]) {
                if (iOS10orlater) {
                    [[UIApplication sharedApplication] openURL:url options:[NSDictionary dictionary] completionHandler:nil];
                } else {
                    [[UIApplication sharedApplication] openURL: url];
                }
            }
        }];
        UIAlertAction *cancelAction = [UIAlertAction actionWithTitle:@"取消" style:UIAlertActionStyleCancel handler:nil];
        [alertVC addAction:okAction];
        [alertVC addAction:cancelAction];
        [self presentViewController:alertVC animated:YES completion:nil];
    } else {
        [SVProgressHUD showSuccessWithStatus:@"保存成功"];
    }
}

 


Tags:

文章來源:


ads
ads

相關文章
ads

相關文章

ad