我正在开发一个iphone的应用程序,它将一些信息加载到webview.I使用hittest代表来触摸,现在我需要找到触摸移动的方向。有什么方法可以找到这个...提前谢谢
答案 0 :(得分:1)
我不确定“使用最热门代表”是什么意思,但我认为你需要做的就是赶上像@MrMage所说的那样。但是,您不需要将UIWebView子类化为此。
UIResponder公开以下内容:
– touchesBegan:withEvent:
– touchesMoved:withEvent:
– touchesEnded:withEvent:
– touchesCancelled:withEvent:
您应该能够拥有自己的UIView子类,作为界面构建器中UIWebView的超级视图。听取这些事件,并确认它们是为您而举的,听起来您熟悉Interface Builder,所以我不会讨论它。
“找到触摸运动的方向”有点模糊。我猜你要检测滑动是否从起点到终点“向上”或“向下”或“向左”或“向右”。通过比较touchesBegan touch和touchesEnded触摸坐标的触摸,您可以非常轻松地完成此操作。
这样的事情应该有效:
if ((endTouch.x - startTouch.x) > 0) { NSLog(@"swipe right"); }
else if ((endTouch.x - startTouch.x) < 0) { NSLog(@"swipe left"); }
请记住,对于任何给定的触摸,都会创建一个UITouch实例,并且该内存地址不会更改。通过这种方式,您可以安全地比较UITouch的地址,以确保您跟踪相同的地址,这在有多个触摸时非常有用(例如您在触摸事件中获得的NSSet)。 Event Handling Guide是一个很好的资源。
答案 1 :(得分:-1)
您可以尝试继承UIWebView
并覆盖touchesBegan
和touchesMoved
等方法。