然后按住 - touchesBegan / touchesMoved / touchesEnded

时间:2014-02-19 20:17:20

标签: ios iphone swipe-gesture

我正在为iOS开发一个应用程序,我希望用户能够在屏幕上选择一些东西,然后在选择结束时能够握住手指一秒钟,以触发其他一些事件

我已经创建了很多动作,因为当用户通过滑动来标记内容时。为此,我一直在使用:

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
    //Stuff here
}
- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event {
    //Stuff here
}
- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event {
    //Stuff here
}

我不关心是否使用了这些函数,或者是否由UIGestureRecognizer完成,但我找不到一种有效而简单的方法来实现它。

有什么建议吗?

2 个答案:

答案 0 :(得分:1)

您可以在触摸开始时启动NSTimer,如果手指在目标区域内,并且如果在定时器触发之前调用触摸结束功能,则在触摸移动功能内满足某些条件取消计时器,否则让它开火。

答案 1 :(得分:0)

您可能需要使用计时器以及平移手势识别器。当手指到达目标区域时,启动计时器。如果手指移出该区域,则使计时器无效。如果计时器触发,则需要长按。