如何检测 UIWebView 上的触摸

How to detect touch on UIWebView(如何检测 UIWebView 上的触摸)

本文介绍了如何检测 UIWebView 上的触摸的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在 UIWebview 上,如何检测触摸?

On UIWebview, how can I detect a touch?

但不是当用户单击某个 URL 或触摸控件时.

But not when user clicks some URL or touching a control.

可以处理吗?

推荐答案

使用 UIGestureRecognizerDelegate 方法:

Use UIGestureRecognizerDelegate method:

在声明文件(即您的 .h 文件)中添加 UIGestureRecognizerDelegate

Add UIGestureRecognizerDelegate in declaration file (i.e. your .h file)

第一步:设置gestureRecognizer的代理:(在.m文件viewDidLoad中)

Step 1: Just set the delegate of gestureRecognizer: (in .m file viewDidLoad)

UITapGestureRecognizer *webViewTapped = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(tapAction:)];
webViewTapped.numberOfTapsRequired = 1;
webViewTapped.delegate = self;
[offScreenWebView addGestureRecognizer:webViewTapped];
[webViewTapped release];

第 2 步:覆盖此函数:(在 .m 文件中)

Step 2: Override this function: (in .m file)

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer
{
    return YES;
}

第 3 步:现在实现 tapAction 函数:

Step 3: Now implement the tapAction function:

- (void)tapAction:(UITapGestureRecognizer *)sender
{    
    NSLog(@"touched");

    // Get the specific point that was touched
    CGPoint point = [sender locationInView:self.view];
}

这篇关于如何检测 UIWebView 上的触摸的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:如何检测 UIWebView 上的触摸

基础教程推荐