如何区分用户滑动和点击操作?

时间:2013-04-09 08:20:11

标签: ios objective-c cocoa-touch uigesturerecognizer

我正在开发一个应用程序,其中我有一个包含子视图的视图。 我想跟踪滑动和点击操作,例如单击。

仅当用户触摸我的子视图时才应跟踪操作。当用户点击我想要执行一个动作时,当用户滑动时我想要执行另一个动作。

为了跟踪滑动,我实施了UIGestureRecognizer,它运行正常。但我不知道如何跟踪点击选项。请指导我如何实现这一目标。

最重要的是,当我点击它时应该只调用轻击操作,反之亦然。

2 个答案:

答案 0 :(得分:1)

您可以使用UITapGestureRecognizer进行点按手势。

  

“UITapGestureRecognizer是UIGestureRecognizer的具体子类   寻找单个或多个水龙头。对于手势来说   识别出,指定数量的手指必须点击视图a   指定的次数。“

此方法包括numberOfTapsRequired(“要识别的手势的点击次数。”)和numberOfTouchesRequired(“要识别的手势点击所需的手指数”)属性,您可以在其中准确设置对用户操作的反应。

在这种情况下,由于您只想在点击一次时激活它,这两个属性的默认设置(两者的默认值均为1)应该没问题。

答案 1 :(得分:0)

获取信息的最佳位置是定义手势识别器的互动方式 Event Handling Guide for iOS

  

当视图附加了多个手势识别器时,您可以   想要改变竞争手势识别器的接收方式   分析触摸事件。默认情况下,没有设置顺序   手势识别器首先接收触摸,因此接触   可以每次以不同的顺序传递给手势识别器。   您可以将此默认行为覆盖为:

     
      
  • 指定一个手势识别器应该在另一个手势识别器之前分析触摸。
  •   
  • 允许两个手势识别器同时操作。
  •   
  • 防止手势识别器分析触摸。
  •