【发布时间】:2020-02-26 20:17:17
【问题描述】:
我想在我的应用程序中添加一个按钮,该按钮将打开 safari 和一个特定的 URL 地址。我该怎么做呢? UIApplication.sharedApplication 在 SwiftUI 中似乎不起作用。
这是我在这里的第一个问题。如果我做错了什么请反馈????
【问题讨论】:
-
UIApplication.shared.open(url控制台中的内容是什么
我想在我的应用程序中添加一个按钮,该按钮将打开 safari 和一个特定的 URL 地址。我该怎么做呢? UIApplication.sharedApplication 在 SwiftUI 中似乎不起作用。
这是我在这里的第一个问题。如果我做错了什么请反馈????
【问题讨论】:
UIApplication.shared.open(url 控制台中的内容是什么
如果您使用的是 SceneDelegate,您可以使用以下方式处理 URL 地址:
func scene(_ scene: UIScene, openURLContexts URLContexts: Set<UIOpenURLContext>) {
guard let url = URLContexts.first?.url else {
return
}
//Handle URL here
}
从那里您可以像往常一样调用 openURL:
UIApplication.shared.open(url, options: [:], completionHandler: nil)
【讨论】:
使用Link:
Link("Some label", destination: URL(string: "https://www.mylink.com")!)
Button(action: {
if let url = URL(string: "https://www.mylink.com") {
UIApplication.shared.open(url)
}
}) {
Text("Some label")
}
【讨论】:
这可以通过 SwiftUI 的 Link: https://developer.apple.com/documentation/swiftui/link 来完成。
【讨论】:
在 SwiftUI 中,您可以使用 Link。例如:
Link("Link Text", destination: URL(string: "https://www.example.com/page.html")!)
【讨论】: