我有一个问题,我如何从webView
中获取url?我执行以下代码,并获得nil
我正在尝试的代码:
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(true)
webView.loadRequest(URLRequest(url: URL(string: "https://www.youtube.com/watch?v=Vv2zJErQt84")!))
if let text = webView.request?.url?.absoluteString{
print(text)
}
}
4条答案
按热度按时间cclgggtu1#
由于
webView
尚未完成加载所请求的URL
,因此无法获取url,您可以在UIWebviewDelegate
的webViewDidFinishLoad
方法中获取该URL
。为此,您需要使用当前ViewController
设置webView
的委托,并需要实现UIWebviewDelegate
。现在,您可以使用
webViewDidFinishLoad
方法获得webView
的当前加载URL
。n7taea2i2#
对于swift 5和swift 4.2,请使用
let url = webView.url?.absoluteString
:-首次导入WebKit:-
然后添加协议:-
然后添加委托人:-
ktca8awb3#
这是一个Swift 3版本,请确保您已经在类声明中添加了
UIWebViewDelegate
,并在viewDidload()
中设置了webView.delegate = self
:rt4zxlrg4#
参考:
如果要查看正在导航以进行加载的URL,请使用此委托方法。navigationAction专门显示正在导航的页面。它可以与webview.url不同