【问题标题】:Download image from iCloud Drive iOS objective C从 iCloud Drive iOS 目标 C 下载图像
【发布时间】:2017-03-15 11:56:42
【问题描述】:

我浏览了许多链接,但没有任何对我有用。我需要做的就是获取所有 iCloud Drive 文件并下载图像。我使用以下代码成功获取所有文件

 - (void)presentDocumentPicker {
    NSArray *documentTypes = @[@"public.content", @"public.text", @"public.source-code ", @"public.image", @"public.audiovisual-content", @"com.adobe.pdf", @"com.apple.keynote.key", @"com.microsoft.word.doc", @"com.microsoft.excel.xls", @"com.microsoft.powerpoint.ppt"];


    UIDocumentPickerViewController *documentPickerViewController = [[UIDocumentPickerViewController alloc] initWithDocumentTypes:documentTypes inMode:UIDocumentPickerModeOpen];
    documentPickerViewController.delegate = self;
    [self presentViewController:documentPickerViewController animated:YES completion:nil];
}


#pragma mark - UIDocumentPickerDelegate

- (void)documentPicker:(UIDocumentPickerViewController *)controller didPickDocumentAtURL:(NSURL *)url {
    self.documentURL = url;

    QLPreviewController *previewController = [[QLPreviewController alloc] init];
    previewController.delegate = self;
    previewController.dataSource = self;

    [self.navigationController pushViewController:previewController animated:YES];
}

现在我不知道如何继续下载图像。

【问题讨论】:

  • 下载图片有什么问题?
  • 我需要从第一步开始的指导,因为我不知道如何开始。

标签: ios xcode icloud icloud-drive


【解决方案1】:

我可以使用这个下载图片

    #pragma mark - UIDocumentPickerDelegate
- (void)documentPicker:(UIDocumentPickerViewController *)controller didPickDocumentAtURL:(NSURL *)url {
    self.documentURL = url;


    NSNumber *isDownloadedValue = NULL;

    BOOL success = [url getResourceValue:&isDownloadedValue forKey: NSURLUbiquitousItemIsDownloadingKey error:NULL];

    if (success && ![isDownloadedValue boolValue]) {
        [[NSFileManager defaultManager]startDownloadingUbiquitousItemAtURL:url error:nil];

        // load image from Ubiquity Documents directory
        NSData *imageData = [NSData dataWithContentsOfURL:url];
           UIImage *     image = [UIImage imageWithData:imageData];
    }

    QLPreviewController *previewController = [[QLPreviewController alloc] init];
    previewController.delegate = self;
    previewController.dataSource = self;

    [self.navigationController pushViewController:previewController animated:YES];
}

【讨论】:

    猜你喜欢
    • 2015-08-31
    • 2016-03-04
    • 1970-01-01
    • 1970-01-01
    • 2014-12-24
    • 2018-09-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多