从 webview 链接 Swift 启动 waze
Posted
技术标签:
【中文标题】从 webview 链接 Swift 启动 waze【英文标题】:Swift launch waze from webview link 【发布时间】:2017-07-07 15:08:06 【问题描述】:我有一个连接到 url 的 webview,在这个 url 上有一个链接,点击该链接时,应该打开带有地址的 waze。在 safari 上它工作正常,但是当我尝试通过我的 webview 打开它时,它似乎不起作用。有什么办法吗?
【问题讨论】:
【参考方案1】:要在外部打开链接,您需要为 web 视图设置 UIWebViewDelegate
。
然后,实现:
func webView(_ webView: UIWebView, shouldStartLoadWith request: URLRequest, navigationType: UIWebViewNavigationType) -> Bool
从那里,您可以从URLRequest
中获取URL
并在外部打开链接。
然后,您可以使用网络视图中的URL
在您的UIApplication
上调用func open(_ url: URL, options: [String : Any] = [:], completionHandler completion: ((Bool) -> Void)? = nil)
。
【讨论】:
您好,首先感谢您的回复,但我不太明白。如果我尝试从 webview 打开链接,这是如何组合在一起的?也许我应该添加一张图片? UIWebView 不会打开外部链接,例如您正在尝试执行的操作。您需要实现该方法来拦截导航操作并获取 URL 并自行打开。以上是关于从 webview 链接 Swift 启动 waze的主要内容,如果未能解决你的问题,请参考以下文章
XCODE swift - webview 无法打开 ics 链接 - 在 safari 中有效