题
是否有可能当的UIWebView(iPhone)已完成加载URL来启动的事件。
我怎样才能找到,在一个UIWebView的当前URL?
解决方案
是,这是可能的。使用UIWebViewDelegate
协议并在委托实现下面的方法:
- (void)webViewDidFinishLoad:(UIWebView *)webView
如果您想要的网址,你可以使用属性request
获得的最后一个请求:
webView.request.URL
其他提示
<强>非常简单的方法:强>
<强>步骤1:强>在头文件中设置代表UIWebViewDelegate
<强>步骤2:添加以下webViewDidFinishLoad
方法获取webview
的当前URL
- (void)webViewDidFinishLoad:(UIWebView *)webView
{
NSLog(@"Current URL = %@",webView.request.URL);
//-- Add further custom actions if needed
}
帕斯卡的回答为“获取URL”的部分是好的。
然而!
从UIWebViewDelegate的文档,从苹果: “webViewDidFinishLoad:一个web视图之后发送完成加载一帧”。
框!=页面。
该页面“加载完成”当webViewDidFinishLoad被调用。它也可以在此之前多次调用。来自Amazon.com页面加载可产生一打调用webViewDidFinishLoad。
如果你控制页面的源代码,那么你可以做一个负载测试了它,它会工作,这种情况下。如果你只在乎得到所谓的“页面加载完成后”,然后webViewDidFinishLoad是足够的。
有关任意网页,与任意JavaScript,加载广告横幅如履薄冰,或者自动滚动条幅,或实现一个视频游戏,网页的想法是“完成加载”也是错误。
不隶属于 StackOverflow