J'ai un UIDocumentPickerViewController
qui ne choisit que des images. Cela fonctionne bien dans iOS 13:
let supportedTypes: [String] = ["public.image"]
let documentPickerViewController = UIDocumentPickerViewController(documentTypes: supportedTypes, in: .import)
J'essaie d'atteindre la même chose dans IOS 14.
Cependant, init(documentTypes:in:)
a été obsolète dans IOS 14.0.
Donc, je suppose que je dois utiliser cet initialisateur à la place: init(forOpeningContentTypes:asCopy:)
L'argument forOpeningContentTypes
attend un tableau de UTType
.
[.____] Je ne sais pas comment utiliser/importer.
[.____] Est-ce comme [UTType.Image]
?
let supportedTypes: [UTType] = [UTType.Image]
self.viewController = UIDocumentPickerViewController(forOpeningContentTypes: supportedTypes, asCopy: true)
????????? Cela ne compilera même pas parce que Cannot find type 'UTType' in scope
.
J'ai aussi essayé import MobileCoreServices
Et même import CoreServices
, Mais cela n'a pas aidé.
La documentation pour le nouvel initialisateur de sélecteur de documents pointe sur cette ttaleperenceferenceference - alors j'ai essayé d'utiliser cela, mais cela ne peut pas être trouvé non plus.
Comment puis-je avoir un UIDocumentPickerViewController
qui choisit uniquement des images dans iOS 14?
Mettre à jour
Cela fonctionne (merci @warren):
import UniformTypeIdentifiers
let supportedTypes: [UTType] = [UTType.image]
let pickerViewController = UIDocumentPickerViewController(forOpeningContentTypes: supportedTypes, asCopy: true)
Ajouter import UniformTypeIdentifiers
à votre Swift fichier pour accéder à UTType
Voir la documentation pour plus d'usages.
Et la Vidéo WWDC202 "Construire des applications basées sur des documents à Swiftui" pour une démonstration pratique.