我有一个 UIWebView,我想检测它的任何触摸。(我不想使用 UITapGsture 或任何其他东西)
为此,我正在使用 UIApplication 的 sendEvent: 方法并检查触摸对象是否包含 webview。
令人惊讶的是它指向 UIWebBrowserView。我必须检查它的超级视图才能获取浏览器,但这使我的代码效率非常低,因为每次用户点击时都会调用 sendEvent。
代码片段:
- (void)sendEvent:(UIEvent *)event { [超级发送事件:事件]; NSSet *touches = [事件 allTouches]; 如果 (touches.count != 1) 返回; UITouch *touch = touches.anyObject if([touch.view isKindOfClass:[UIWebView class]]){ // 失败 } }
我想知道有没有办法让 UITouch 返回 WebView 作为一个对象,而不是返回它的子视图,如 UIPdfView 或 UIWebBrowser 视图?