Iphone 你如何识别拖拽手势

Iphone 你如何识别拖拽手势,iphone,button,drag,Iphone,Button,Drag,我的视图中有几个按钮是使用IB构建的。每个按钮都会触发一个短音频 我想用我的手指在他们身上扳动他们。。。就像你在钢琴键上拖动手指一样(别担心,我不是在制作钢琴应用程序) 我不知道如何识别按钮外的触摸,然后识别按钮内的触摸 有什么想法吗 感谢由于您的按钮子类来自UIControl,您可以使用UIControl的手势识别实现 查看UIControl的-(void)addTarget:(id)target action:(SEL)action for controlEvents:(UIControl事

我的视图中有几个按钮是使用IB构建的。每个按钮都会触发一个短音频

我想用我的手指在他们身上扳动他们。。。就像你在钢琴键上拖动手指一样(别担心,我不是在制作钢琴应用程序)

我不知道如何识别按钮外的触摸,然后识别按钮内的触摸

有什么想法吗


感谢

由于您的按钮子类来自UIControl,您可以使用UIControl的手势识别实现

查看UIControl的
-(void)addTarget:(id)target action:(SEL)action for controlEvents:(UIControl事件)controlEvents
。这将允许您在对象上指定一个方法,以便在发生某些事件时调用该方法。可能发生的事件包括:

   UIControlEventTouchDragInside     = 1 <<  2,
   UIControlEventTouchDragOutside    = 1 <<  3,
   UIControlEventTouchDragEnter      = 1 <<  4,

UIControlEventTouchDragInside=1作为来自UIControl的按钮子类,您可以使用UIControl的手势识别实现

查看UIControl的
-(void)addTarget:(id)target action:(SEL)action for controlEvents:(UIControl事件)controlEvents
。这将允许您在对象上指定一个方法,以便在发生某些事件时调用该方法。可能发生的事件包括:

   UIControlEventTouchDragInside     = 1 <<  2,
   UIControlEventTouchDragOutside    = 1 <<  3,
   UIControlEventTouchDragEnter      = 1 <<  4,

UIControlEventTouchDragInside=1感谢您的回复。我签出了苹果控制事件文档。UIControlEventTouchDragEnter听起来正是我想要的。“UIControlEventTouchDragEnter将手指拖动到控件边界的事件。”但它似乎不是这样工作的。它应该表示一个事件,其中手指被重新拖动到控件的边界中。我不能把它从外面拖到里面?无论如何,我会继续努力的。干杯你可以用这些事件作为“当前视图”发生了什么的信号。然后,如果不能完全确定它是以这种方式工作的,您可以检查当前的UITouch(特别是view属性)以确定手指现在的位置。您如何处理选择器上的事件类型?我应该为每种事件类型使用不同的选择器吗?谢谢您的回复。我签出了苹果控制事件文档。UIControlEventTouchDragEnter听起来正是我想要的。“UIControlEventTouchDragEnter将手指拖动到控件边界的事件。”但它似乎不是这样工作的。它应该表示一个事件,其中手指被重新拖动到控件的边界中。我不能把它从外面拖到里面?无论如何,我会继续努力的。干杯你可以用这些事件作为“当前视图”发生了什么的信号。然后,如果不能完全确定它是以这种方式工作的,您可以检查当前的UITouch(特别是view属性)以确定手指现在的位置。您如何处理选择器上的事件类型?我应该为每种事件类型使用不同的选择器吗?