我当前的代码能够显示 ActivityView,但不显示 Airdrop,但这不是主要问题,对此我深表歉意,但我无法真正修复一个,而不修复另一个......
func genCSV() -> String {
return "field1, field2"
}
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>) {}
}
假设genCSV()
基金实际上返回了有效的 CSV-Strings,我该如何使用它,将它与ActivityViewController
发送生成的 CSV-File 结合起来(显然我仍然需要生成文件,这是我现在的主要问题)?
var body: some View {
NavigationView {
VStack {
HStack {
Button(action: { //action that triggers the sheet }) {
Image(systemName: "square.and.arrow.up")
.resizable()
.scaledToFit()
.padding(.all, 50)
.frame(width: 150, height: 150)
.background(Color.gray.brightness(0.18).opacity(0.5))
.clipShape(Circle())
}
.sheet(isPresented: self.$viewModel.airdropVisible) {
ActivityViewController(activityItems: [URL(string: "www.apple.com")!])
}
}
}
}
}
这是我当前的 ContentView。任何帮助或指针表示赞赏,我搜索了很多谷歌结果,并没有真正找到一个好的答案。
剩下的一个问题是,Airdrop 甚至没有出现在ActivityViewController
.