在触摸时更改shouldReceiveTouch返回值

时间:2013-05-12 10:27:02

标签: cocoa-touch

好吧,让我解释一下我的问题。 我必须改变

的返回值
-(BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch { }

当我移动手指(触摸)时,不仅在触摸开始时设置值。

这可能吗?如果有,怎么样? 请帮忙。

2 个答案:

答案 0 :(得分:0)

一旦开始触摸识别,就不会再次调用此方法。如果您只想取消手势,请致电

gestureRecognizer.enabled = NO;
gestureRecognizer.enabled = YES;

这将取消当前手势。

但是,根据您的使用情况,可能会有更好的解决方案。

答案 1 :(得分:0)

所以,想通了,我所做的就是:

我创建了一个全局布尔变量 然后我用了

-(BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer { }

insted of

-(BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch { }

使用UIPanGestureRegocnizer我将变量设置为TRUEFALSE依赖于我正在做的事情。

我正在显示警报和其他东西,使用此方法多次执行我的警报代码,因此我已经定义了另一个布尔变量,因此我可以检查警报是否显示,只显示一次:)

这是我的解决方案.. 修正了一个错误,是的^^