【问题标题】:Detect when user stops touching UIButton检测用户何时停止触摸 UIButton
【发布时间】:2014-12-12 14:45:04
【问题描述】:

我有一个 UIButton,它附加了一个 UIPanGesture。当用户按下 UIButton 时,我调用事件Touch Down。我还想弄清楚用户在可能将其拖到屏幕上之后何时从按钮上抬起手指。我尝试过使用诸如Touch Up InsideTouch Drag Exit 之类的代表,但在拖动 UIButton 后这些似乎不起作用...

【问题讨论】:

  • 试试 UIControlEventTouchCancel
  • @user3705414 不幸的是,每当用户开始拖动时,它都会调用 UIControlEventTouchCancel,我希望在抬起手指时调用它。

标签: ios objective-c uibutton


【解决方案1】:

仅当平移手势识别器开始时才会触发。如果用户只是点击按钮,它不会触发。

-(void)setupGesture
{
    UIPanGestureRecognizer *pan = [[UIPanGestureRecognizer alloc]initWithTarget:self action:@selector(handlePan:)];
    [self.yourButton addGestureRecognizer:pan];
 }


-(IBAction)handlePan:(UIPanGestureRecognizer *)sender
{
    switch (sender.state) {
        case UIGestureRecognizerStateEnded:
            //Should fire when the user lifts finger
            break;
        default:
            break;
    }
}

【讨论】:

    猜你喜欢
    • 2014-07-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多