我正在尝试从中下载文件
-documentPicker:didPickDocumentAtURL:
Run Code Online (Sandbox Code Playgroud)
方法.我试图使用该文件的数据
NSData *data = [NSData dataWithContentsOfURL:url];
Run Code Online (Sandbox Code Playgroud)
但它没有按预期工作,因为UIDocumentPicker会在下载文件之前触发-documentPicker:didPickDocumentAtURL:-method.
如何在下载文件时从文件中获取NSData?
在此先感谢Fabian.
我正在应用程序中选择照片,我已经习惯UIDocumentMenuViewController显示文档提供程序的扩展名列表.此列表显示Dropbox,iCloud,GoogleDrive但不是原生照片应用,为什么?我的代码示例:
UIDocumentMenuViewController *menuVC = [[UIDocumentMenuViewController alloc] initWithDocumentTypes:@[@"public.image"] inMode:UIDocumentPickerModeImport];
Run Code Online (Sandbox Code Playgroud)
我正在使用下面的代码来显示文档选择器。当我显示选择器时,我使用下面的代码
let documentPickerController = UIDocumentPickerViewController(documentTypes: [String(kUTTypeText), String(kUTTypePDF), String(kUTTypePNG), String(kUTTypeJPEG), String(kUTTypePlainText), String(kUTTypeImage)], in: .import)
Run Code Online (Sandbox Code Playgroud)
上面的代码向我显示了iCloud中的所有文件,但不允许我选择doc,docx文件。这些文件显示为已禁用。
但是当我"public.data"在UIDocumentPickerViewController构造函数中添加为元素时,它允许我选择doc,docx文件和文件未显示为已禁用。
请告诉我为什么会这样吗?
我正在使用 UIDocumentPickerViewController 将图像导出到 iOS 11 中的文件应用程序。选择器出现,我可以选择文件的目标位置。我收到文件已移动的回调,我可以在文件中看到它们,所以看起来工作正常。然而,用户界面是错误的——“添加”和“取消”按钮看起来被禁用,但实际上它们工作正常。如果我只使用共享表中的“保存到文件”,按钮看起来不会这样。
这是我的代码:
UIDocumentPickerViewController *docPicker =
[[UIDocumentPickerViewController alloc] initWithURLs:self.assetURLs inMode:UIDocumentPickerModeExportToService];
docPicker.delegate = self;
[vc presentViewController:docPicker animated:YES completion:nil];
Run Code Online (Sandbox Code Playgroud)
我尝试过的事情:
1)我尝试过移动和导出类型
2)我启用了 iCloud 功能(所有三项:键值、文档和 CloudKit)- 体验上没有区别 [事实上,代码有效即使没有这些设置,尽管文档另有说明])
这是用户界面的屏幕截图。正如您所看到的,用户界面表示它将将该项目添加到所选目录中(事实上,如果我点击“添加”,它就会添加该项目):

有人知道如何让按钮显示为蓝色并看起来已启用吗?我还没有在网上找到任何可以尝试的示例代码——如果有人有指针,我可以尝试看看它是否与我的配置或代码有关。
我正在创建一个应用程序,其中有自定义文件类型,例如.xyz文件,它不是 UTType API 的一部分。
以下是案例问题:
xyz扩展名的自定义 UTType 。.xyzxyz扩展名的文件应该在文件 App.js 上显示一个自定义图标。