如果我在调用 webViewDidStartLoad 方法时尝试从 webView 检索 URL,我会得到一个空字符串。这是我的代码:
- (void)webViewDidStartLoad:(UIWebView *)webView
{
NSURL* url = [webView.request URL];
const char* urlchar = [[url absoluteString] UTF8String];
// do stuff with urlchar...
}
这与我在 webViewDidFinishLoad 中使用的代码相同,而且似乎有效。这是正确的方法吗?有没有更好的办法?我应该期望在调用时获得有效的 url 吗?
最佳答案
这才是正确的做法。该委托(delegate)方法中提供的 webView
参数允许您访问启动请求的 UIWebView
。作为旁注,当加载页面中的图像、脚本和其他资源时调用此方法(每个资源一次)。为确保页面完全完成,请检查 loading
属性。
关于iphone - 调用 webViewDidStartLoad 时获取 URL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4876680/