我有三个手势:双指点按,3指点按和4指点按。我需要相应地得到坐标。
我已经尝试了以下方法来获得2个手指点击的协调,但应用程序仍然崩溃:
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
NSArray *twoTouch = [touches allObjects];
UITouch *tOne = [twoTouch objectAtIndex:0];
UITouch *tTwo = [twoTouch objectAtIndex:1];
CGPoint firstTouch = [tOne locationInView:[tOne view]];
CGPoint secondTouch = [tTwo locationInView:[tTwo view]];
NSLog(@"point one: %@", firstTouch);
NSLog(@"point two: %@", secondTouch);
[twoTouch release];
}
答案 0 :(得分:2)
首先,您的应用程序不会检查实际上是否两次触摸。 如果您用一根手指点击屏幕,您将在“触摸”中轻触一下。
尝试这样的事情。
if(touches.count > 1 && touches.count < 3)
{
// Your code for two touches.
}
否则,程序崩溃的部分是[twoTouch objectAtIndex:1],因为objectAtIndex:1不存在。
(我知道这是一个非常古老的问题,但无论如何我都回答了。)