我正在UIWebView中加载一个URL。它会打开一个包含一些URL链接的网页。单击特定链接时是否可以调用方法。
我只是想在我的iOS App中检测UIWebView中的URL点击。
感谢。
答案 0 :(得分:0)
是的,UIWebViewDelegate
协议中有方法。将控制器添加为delegate
UIWebView
。
self.webView.delegate = self;
然后实现委托方法:
- webView:shouldStartLoadWithRequest:navigationType:`
你应该阅读它的文档。如您所见,一个参数是navigationType,您只对UIWebViewNavigationTypeLinkClicked
感兴趣。
答案 1 :(得分:0)
就像帖木儿说的那样,UIWebViewDelegate
添加到你的viewController中
然后你可以使用这样的方法:
-(BOOL) webView:(UIWebView *)inWeb shouldStartLoadWithRequest:(NSURLRequest *)inRequest navigationType:(UIWebViewNavigationType)inType {
if ( [[[inRequest URL] scheme] isEqualToString:@"js-call"] ) {
// Do something interesting...
return NO;
}
return YES;
}
然后我使用了js调用,但你也可以使用链接:
window.location.href = "js-call:myEvent";