cocos2d - 多點觸摸

第一步,在applicationDidFinishLaunching方法加入:

[viewController.view setMultipleTouchEnabled:YES];//開啓多點觸摸支持

第二步:

//監聽首次觸發事件  
- (BOOL)ccTouchBegan:(UITouch *)touch withEvent:(UIEvent *)event
{
    NSSet *allTouches = [event allTouches];//獲得所有觸摸點
    
    int count = [[allTouches allObjects] count];//當前觸摸點數量,單點觸摸爲1.
    if (count == 1) {//單點觸摸
        UITouch *touch1 = [[allTouches allObjects] objectAtIndex:0];//獲得第一個觸摸點
        switch ([touch1 tapCount]) {//判斷是單擊還是雙擊
            case 1:
                NSLog(@"單擊\n");
                break;
            case 2:
                NSLog(@"雙擊\n");
                break;
        }
    }else if (count == 2) {//多點觸摸
        //
    }
    
    return YES;
}  
也就是通過event參數得到一個NSSet,這個NSSet保存了所有的觸摸點。

每次雙擊事件之前都有一個單擊時間。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章