swift - 在 SwiftUI 中将 URL 和文本共享到 Facebook 或 Twitter?
问题描述
我创建了这个共享按钮,其中包含要共享的项目,例如 URL 和文本。
当我点击共享按钮时,虽然它只显示要共享的文本,但不显示 URL。
如何选择 URL 优先于文本?这样当分享到 Facebook 时它只需要 URL,但是当发布到 Twitter 时它使用 URL 以及 Text ?
import SwiftUI
struct ShareButton: View {
@State private var isShareSheetShowing = false
var url : String = "https://apple.com"
var body: some View {
Button(action: shareButton){
Image(systemName: "square.and.arrow.up")
.frame(width: 35, height: 35)
}
}
func shareButton() {
isShareSheetShowing.toggle()
let items: [Any] = [URL(string: url)!, "Visit the Apple Website Text"]
let av = UIActivityViewController(activityItems: items, applicationActivities: nil)
UIApplication.shared.windows.first?.rootViewController!.present(av, animated: true, completion: nil)
}
}
struct ShareButton_Previews: PreviewProvider {
static var previews: some View {
ShareButton()
}
}
解决方案
我也在寻找一种直接与 Facebook 分享 SwiftUI 的方法。
我的问题是如何在 SwiftUI 视图中包装以下函数(来自 Facebook iOS SDK)
let content = ShareLinkContent()
content.contentURL = url
ShareDialog(
fromViewController: self,
content: content,
delegate: self
)
推荐阅读
- reactjs - 如何使用 typescript 模拟或断言 window.alert 是否已在 React & Jest 中触发?
- javascript - 如何阻止用户输入一些字符来输入?
- python - Scrapy 204 没有收到数据
- javascript - 在主页上时使导航透明,否则默认
- javascript - 如何使用 jquery 和 javascript 创建自动向下滚动效果?
- python - 如何在循环中使用 i 来产生差异?
- c - 从服务器发送到客户端的文件在 c 中损坏
- scikit-learn - 向决策树添加正确的标签
- javascript - readAsDataURL() 将其更改为图像 url
- pass-by-reference - 当我们在这个函数中传递值结果时会发生什么?