本文介绍了在 SwiftUI 中显示“UIActivityViewController"的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想让用户能够共享位置,但我不知道如何在 SwiftUI 中显示 UIActivityViewController
.
I want to let the user to be able to share a location but I don't know how to show UIActivityViewController
in SwiftUI.
推荐答案
SwiftUI
中UIActivityViewController
的基本实现是
import UIKit
import SwiftUI
struct ActivityViewController: UIViewControllerRepresentable {
var activityItems: [Any]
var applicationActivities: [UIActivity]? = nil
func makeUIViewController(context: UIViewControllerRepresentableContext<ActivityViewController>) -> UIActivityViewController {
let controller = UIActivityViewController(activityItems: activityItems, applicationActivities: applicationActivities)
return controller
}
func updateUIViewController(_ uiViewController: UIActivityViewController, context: UIViewControllerRepresentableContext<ActivityViewController>) {}
}
这是如何使用它.
struct MyView: View {
@State private var isSharePresented: Bool = false
var body: some View {
Button("Share app") {
self.isSharePresented = true
}
.sheet(isPresented: $isSharePresented, onDismiss: {
print("Dismiss")
}, content: {
ActivityViewController(activityItems: [URL(string: "https://www.apple.com")!])
})
}
}
这篇关于在 SwiftUI 中显示“UIActivityViewController"的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!