2016-03-05 62 views
1

我是一個開始的mac開發人員,我正在尋找開發一個應用程序,檢測軌跡板上的四指輕敲。我的代碼觸發了基於代碼here的觸控板事件的回調。我將如何特別修改它以檢測四指輕敲?如何檢測Mac觸控板上的四個指狀水龍頭?

+0

如果事件被發現,插入一個斷點到你的代碼,執行四個手指輕點,看看什麼樣的數據相對應的事件包含的內容。像這樣的低級別的東西,你真的不應該使用,往往很容易被逆向工程。 – dognotdog

回答

3

在要檢測觸摸事件的看法,覆蓋:

- (void)touchesBeganWithEvent:(NSEvent *)event { 
    NSSet *touches = [event touchesMatchingPhase:NSTouchPhaseTouching inView:self]; 
    if (touches.count == 4) 
     NSLog(@"4 finger touch detected"); 
} 

記住,使視圖接收觸摸事件有:

[self setAcceptsTouchEvents:YES] 
1

斯威夫特3版本

在您想要檢測觸摸事件的視圖中,覆蓋:

override func touchesBegan(with event: NSEvent) { 
    var touches = event.touches(matching: NSTouch.Phase.any, in: self.view) 
    if(touches.count == 4){ 
     print("Four finger touch detected") 
    } 
} 

記住,使視圖接收觸摸事件有:

self.view.acceptsTouchEvents = true 
相關問題