在UIGestureRecognizerDelegate 代理方法中
-(BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer
這個(gè)代理方法表示是否支持多手勢(shì)觸發(fā),返回YES,則可以多個(gè)手勢(shì)一起觸發(fā)方法,返回NO則為互斥.
或者這么理解,一個(gè)控件的手勢(shì)識(shí)別后是否阻斷手勢(shì)識(shí)別繼續(xù)向下傳播,默認(rèn)返回NO;如果為YES,響應(yīng)者鏈上層對(duì)象觸發(fā)手勢(shì)識(shí)別后,如果下層對(duì)象也添加了手勢(shì)并成功識(shí)別也會(huì)繼續(xù)執(zhí)行,否則上層對(duì)象識(shí)別后則不再繼續(xù)傳播.
在使用手勢(shì)的控件遵循代理,實(shí)現(xiàn)代理方法,就可以保證識(shí)別多個(gè)手勢(shì)了,另外記得userInteractionEnabled屬性設(shè)為YES.
-(BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer{
return YES;//默認(rèn)NO
}
參考 :
你真的了解UIGestureRecognizer嗎?(https://www.cnblogs.com/wujy/p/5821991.html)