在拖动外部的UIButton触摸上触发一个动作,然后松开手指

时间:2013-10-04 10:25:28

标签: ios objective-c uibutton sender

当用户触摸按钮内部时,我需要一个UIButton来执行特定操作,而不释放按钮外的触摸拖动然后释放手指。我不希望如果他触摸按钮内部然后拖出而没有抬起手指再次回到按钮然后松开手指(这将有效地变成内部的触摸,这也不是发件人我正在寻找)。是否有任何发件人类型在指定条件下执行特定操作?我希望这个疑问足够清楚。如果您对我的要求有疑问,请提及。

2 个答案:

答案 0 :(得分:2)

UIControlEventTouchUpOutside不适合你吗?

[myButton addTarget:self action:@selector(action) forControlEvents:UIControlEventTouchUpOutside];

答案 1 :(得分:0)

您可以按照以下方式进行操作

-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{

}

-(void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event{
    UITouch *aTouch = [touches anyObject];
    CGPoint point = [aTouch locationInView:self.view];

}

这里你需要做的是将点(CGPoint)与你的按钮区域进行比较并采取相应的行动