天天看點

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儲存了所有的觸摸點。每次輕按兩下事件之前都有一個單擊時間。      

繼續閱讀