IOS: UISwipeGestureRecognizer - PullRequest
       1

IOS: UISwipeGestureRecognizer

3 голосов
/ 03 января 2012

У меня есть этот код:

UISwipeGestureRecognizer *recognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(rightSwipeHandle:)];
[recognizer setNumberOfTouchesRequired:1];
[n16 addGestureRecognizer:recognizer];
[n17 addGestureRecognizer:recognizer];

- (void)rightSwipeHandle:(UISwipeGestureRecognizer*)gestureRecognizer{
NSLog(@"SWIPE");
}

Как узнать, в каком виде происходит жест? просмотров n16 и n17

Ответы [ 2 ]

3 голосов
/ 03 января 2012

Я не уверен, что вы можете зарегистрировать один и тот же экземпляр UIGestureRecognizer для разных представлений, но если вы могли, я думаю, что свойство UIGestureRecognizer.view - это то, что вы ищете.1005 * Итак, вы должны быть в состоянии сделать что-то вроде этого.(опять же, я не уверен, что вы можете прикрепить другой экземпляр UIGestureRecognizer к разным представлениям ...)

- (void)rightSwipeHandle:(UISwipeGestureRecognizer*)gestureRecognizer{
    if(gestureRecognizer.view == n16)
    {
        // specific operation to n16
    } 
    else if(gestureRecognizer.view == n17)
    {
        // specific operation to n17
    }
}
1 голос
/ 03 января 2012

Как это:

- (void)rightSwipeHandle:(UISwipeGestureRecognizer*)gestureRecognizer {
    NSLog(@"SWIPE");
    UIView *vw = [gestureRecognizer view]; // this is the view that generated the
        // gesture - either n16 or n17
}
...