当用户捏住对象时如何忽略touchesBegan方法,当用户点击屏幕时忽略touchesMoved方法?我创建了一个图片放大/缩小效果,我希望能够在用户点击屏幕一次时隐藏导航栏。现在,当用户开始捏合时,导航栏会在用户触摸一次后显示。
最好的方法是什么?
答案 0 :(得分:1)
对于您的显示/隐藏导航栏,最简单的操作似乎是添加UITapGestureRecognizer并将numberOfTouchesRequired和numberOfTapsRequired设置为1.
或者,您可以使用touchesEnded而不是touchesBegan。然后在你的touchesEnded中,你可以检查触摸次数,只显示/隐藏它是否为1:
-(void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event {
UITouch *theTouch = [touches anyObject];
if (theTouch.tapCount == 1) {
// show/hide navigation here ...
} else {
// finish your zoom here ...
}
}