以下でDocumetPickerは表示でき、
Swift
1.sheet(isPresented: self.$showActivityView, onDismiss: { 2 3 }, content: { 4 DocumentPicker() 5 })
iOSデフォルトのファイルApp.のようにファイルを複数選択できました。
ファイルApp.では選択すると画面の下部に
”共有 複製 移動 削除 その他”が表示されますが、
この記載では表示されません。
swift
1documentPicker.allowsMultipleSelection = true
のようにプロパティでしょうか?
それとも、引数でしょうか?
swift
1let documentPicker = UIDocumentPickerViewController(
そもそも不可でしょうか?
ファイルを選択して、また、UIActivityを表示するのはよろしくないと考えています。
Swift
1import SwiftUI 2import MobileCoreServices 3import UniformTypeIdentifiers 4 5struct DocumentPicker :UIViewControllerRepresentable { 6 7 func makeCoordinator() -> DocumentPicker.Coordinator { 8 return DocumentPicker.Coordinator(parent1: self) 9 } 10 11 func makeUIViewController(context: UIViewControllerRepresentableContext<DocumentPicker>) -> UIDocumentPickerViewController{ 12 let documentPicker = UIDocumentPickerViewController(forOpeningContentTypes: [UTType.commaSeparatedText]) 13 documentPicker.delegate = context.coordinator 14 documentPicker.allowsMultipleSelection = true 15 return documentPicker 16 } 17 18 func updateUIViewController(_ controller: UIDocumentPickerViewController, context: Context) { 19 print(#function) 20 } 21 22 23 class Coordinator: NSObject, UIDocumentPickerDelegate{ 24 25 var parent: DocumentPicker 26 27 init(parent1: DocumentPicker){ 28 parent = parent1 29 } 30 func documentPicker(_ controller: UIDocumentPickerViewController, didPickDocumentsAt urls: [URL]) { 31 guard urls.count != 0 else { 32 return 33 } 34 35 print(#function) 36 print(urls.debugDescription) 37 } 38 } 39}
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。