是否有可能从uiwebview
获取信号?
就我而言,我在网页浏览中显示一个网页。当用户按下网站上的按钮时,我的应用程序应该(也)对此作出反应。
感谢您的帮助
答案 0 :(得分:2)
是的,你可以这样做。实施
– webView:shouldStartLoadWithRequest:navigationType:
这delegate。只要您的webview即将发出请求,就会调用此方法。因此,当有人点击您网页上的按钮时,您将收到此方法的调用。在您接听此电话后,您可以选择随意使用它。比如通过您自己的服务器重定向链接,或者向服务器记录有关用户活动等的请求。
示例 - 在这里,您试图拦截点击您网页上的所有链接。首先通过myMethodAction
传递。
- (BOOL)webView:(UIWebView*)webView shouldStartLoadWithRequest:(NSURLRequest*)request navigationType:(UIWebViewNavigationType)navigationType
{
if(navigationType == UIWebViewNavigationTypeLinkClicked)
{
if(overrideLinksSwitch.on == TRUE)
{
[self myMethodAction];
[myWebView stopLoading];
return YES;
}
else
{
return YES;
}
}
return YES;
}
希望这会有所帮助......
答案 1 :(得分:0)
UIWebViewDelegate提供了几种方法。我曾经使用过其中一个
-(BOOL) webView:(UIWebView *)inWeb shouldStartLoadWithRequest:(NSURLRequest *)inRequest navigationType:(UIWebViewNavigationType)inType {
if ( inType == UIWebViewNavigationTypeLinkClicked ) {
// do stuff
return NO;
}
return YES;
}