出于自定义的原因,我正在构建自己的滑块控件,如果需要,可以使用多个UIImageViews和UIButton构建。我已经使用UIPanGestureRecognizer进行了平移工作,工作正常。我正在尝试挂钩一个事件,它将处理UIControlEventTouchUpInside的代码,但是我无法在Pan事件触发后触发它。我已经使用UITapGestureRecognizer并使用UIButton的内置事件,但只有在它是唯一的手势时它才会触发。我需要知道用户何时不再向左和向右拖动滑块,但只有在用户将他/她的手指从屏幕上抬起后才会发生(我无法使用计时器来查看移动何时停止,因为用户可能仍然在决定开始Pan之后要去哪个方向。
简短版本:我如何知道用户何时停止平移控件并将手指从屏幕上抬起?
答案 0 :(得分:3)
假设您按照以下方式初始化识别器:
UIPanGestureRecognizer *grPan=[[UIPanGestureRecognizer alloc] initWithTarget:self action:@selector(panning:)];
你可以这样做:
-(void)panning:(UIPanGestureRecognizer *)senderGestureRecognizer {
if(senderGestureRecognizer.state==UIGestureRecognizerStateEnded)
{
//User stopped panning (lifted finger)
}
}