Iphone 手指固定的长按按钮
在我的项目中,我需要使用UIButton(或其他组件)来处理长按事件。 让我解释一下,我应该记住,我按下按钮计时秒数并释放到压力停止,我尝试使用UILongPressGestureRecognitor的管理,但事实并非如此,因为我在按下按钮时回忆事件,但只有当我移动手指时,但我希望计时器消失,并计算所有按下按钮的时间(手指静止),并在手指松开时停止计数 有人知道如何帮助我吗?Iphone 手指固定的长按按钮,iphone,xcode,uibutton,pressure,Iphone,Xcode,Uibutton,Pressure,在我的项目中,我需要使用UIButton(或其他组件)来处理长按事件。 让我解释一下,我应该记住,我按下按钮计时秒数并释放到压力停止,我尝试使用UILongPressGestureRecognitor的管理,但事实并非如此,因为我在按下按钮时回忆事件,但只有当我移动手指时,但我希望计时器消失,并计算所有按下按钮的时间(手指静止),并在手指松开时停止计数 有人知道如何帮助我吗? 谢谢我也这么做了……正如你所说的UILongPressGestureRecognitor,我不明白……但你可以在-(vo
谢谢我也这么做了……正如你所说的UILongPressGestureRecognitor,我不明白……但你可以在
-(void)handleLongPress:(UILongPressGestureRecognitor*)GestureRecognitor中编写代码
{
}
。我也用这种方法做了同样的事情,并获得了成功的结果..:)。你甚至不需要添加计时器,相反,你可以使用
UILongPressGestureRecognizer *lpgr = [[UILongPressGestureRecognizer alloc]
initWithTarget:self action:@selector(handleLongPress:)];
lpgr.minimumPressDuration = 1.0;
lpgr.delegate = self;
我认为这非常有效。将这两种方法用于按钮事件<按下按钮时会调用“代码>触地”,从按钮上抬起手指时会调用“代码>触地”。计算这两种方法之间的时间差。您还可以在
触地
中启动计时器,并在触地
中停止/重新启动计时器
//connect this action with Touch up inside
- (IBAction)touchUp:(id)sender {
NSLog(@"up");
}
//connect this to tocuh down
- (IBAction)touchDown:(id)sender{
NSLog(@"down");
}
已更新 在编码方面,你可以这样写
[btn addTarget:self action:@selector(touchUp:) forControlEvents:UIControlEventTouchUpInside];
[btn addTarget:self action:@selector(touchDown:) forControlEvents:UIControlEventTouchDown];
在xib中,我无法理解你的问题。你能试着用另一种方式说吗?嗨,我需要按下一个按钮并计算我按下按钮的秒数(我的手指在按钮上的秒数),如果我把手指放在按钮上5秒,计时器启动并计算5秒,然后我释放按钮计时器停止。谢谢,但如果我按住按钮上的手指锁,它也能工作吗?我尝试使用UILongPressGestureRecognitor,但只有当我移动手指时,它才起作用。除非您在UIScrollView中有此按钮,或者您的UIgestureRecognitor干扰了此按钮。