2013-07-10 52 views
0

是否有任何類似觸摸事件的通用處理程序?一種方法,當任何類型的交互發生時都會被調用,觸發事件的信息作爲參數傳遞。iOS通用觸摸處理程序

回答

1

你會想堅持UIGestureRecognizerDelegate protocol,即以下兩種方法:

- (BOOL)gestureRecognizerShouldBegin:(UIGestureRecognizer *)gestureRecognizer; 
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch; 

在這些方法,您可以檢查手勢識別對象,看它是否是姿態的你正在尋找的類型以指定手勢是否應該開始或接收觸摸。

編輯:爲了檢測手勢結束時,您將有這樣的事情:

// in viewDidLoad or in initialization of your view controller: 
    _panGestureRecognizer = [[UIPanGestureRecognizer alloc] initWithTarget:self action:@selector(handlePanGestureRecognizer:)]; 
    [self addGestureRecognizer:_panGestureRecognizer]; 
    [_panGestureRecognizer setDelegate:self]; 

- (void)handlePanGestureRecognizer:(UIPanGestureRecognizer *)gesture { 
    UIGestureRecognizerState state = [gesture state]; 
    if (state == UIGestureRecognizerStateEnded) { 
     // gesture ended here 
    } 
} 
+0

你會如何檢測手勢的結束? – user1802143

+0

@ user1802143我更新了我的答案以解決您的問題。 – Stunner