我在处理我的应用程序中的触摸时遇到了一点问题。
我这样设置 touchesBegan :
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
UITouch *currentTouch = [[event allTouches] anyObject];
touchPoint = [currentTouch locationInView:self.view];
if (CGRectContainsPoint(image1.frame, touchPoint)) {
image1IsTouched = YES;
}
}
然后我像这样设置我的触摸动作:
- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event
{
UITouch *currentTouch = [[event allTouches] anyObject];
currentPoint = [currentTouch locationInView:currentTouch.view];
if(image1IsTouched == YES) {
image1.center = CGPointMake(currentPoint.x,currentPoint.y);
.....
}
}
现在我在实际单元上尝试了我的应用程序,这就是我注意到我的问题的地方。当我用一根手指触摸 image1 时,应用程序运行正常,并且每次我拖动手指时都会检查碰撞。当我在触摸/拖动图像时用另一根手指触摸屏幕时会出现问题。我当前触摸的图像将跳转到另一根手指。我已经尝试过[myView setMultipleTouchEnable:NO];
使用NSArray
触摸并将其[touches count]
与触摸进行比较,但它不起作用。有人可以告诉我如何将 uiimageview 设置为仅在单次触摸时操作。谢谢。