UIButton用手指固定长按

Ale*_*Mal 2 iphone xcode uibutton pressure

在我的项目中,我需要使用UIButton(或其他组件)来使用长按来处理事件.让我解释一下,我应该记住,我按下按钮一个计时器来计算秒数并释放到压力停止,我尝试使用UILongPressGestureRecognizer的管理,但事实并非如此,因为我回想起按钮被按下时的事件但是只有当我移动我的手指时,我希望计时器消失并按下按钮的所有时间(手指静止),并在手指松开时停止计数.

有谁知道如何帮助我?谢谢

Ind*_*ore 6

按钮事件使用这两种方法.touchDown按下按钮时touchUp会调用该按钮,当您从按钮上抬起手指时会调用该按钮.计算这两种方法之间的时差.您也可以启动计时器touchDown并停止/重新启动计时器touchUp.

//connect this action with Touch up inside
- (IBAction)touchUp:(id)sender {
    NSLog(@"up");
}

//connect this to tocuh down
- (IBAction)touchDown:(id)sender{
    NSLog(@"down");
}
Run Code Online (Sandbox Code Playgroud)

更新 在编码中,您可以这样写

[btn addTarget:self action:@selector(touchUp:) forControlEvents:UIControlEventTouchUpInside];
[btn addTarget:self action:@selector(touchDown:) forControlEvents:UIControlEventTouchDown];
Run Code Online (Sandbox Code Playgroud)

并在xib 在此输入图像描述