2013-01-15 2 views
0

Где-то в нижней части моей иерархии представлений, я реализую метод touchhesBegan. Он срабатывает при всех касаниях, за исключением однократных отводов. Это заставляет меня поверить, что где-то выше в иерархии, представление перехватывает/обрабатывает отдельные пальцы, но я не могу найти представление о жизни меня. Есть ли хороший способ отладки этого?Как я могу определить, какой вид обрабатывает мой кран?

+0

Как вы думаете Трассировка: withEvent: будет полезно? Посмотрите эту тему http://stackoverflow.com/questions/4961386/event-handling-for-ios-how-hittestwithevent-and-pointinsidewithevent-are-r. – sridevi

+0

К сожалению, 'hitTest: withEvent:' возвращает представление, которое не получает крана. Устройство распознавания жестов, похоже, не влияет. –

ответ

0

Попробуйте этот путь, если он работать:

- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event 
{ 
    UITouch *touch = [[event allTouches] anyObject]; 
    CGPoint touchLocation = [touch locationInView:self.contentView]; 

    for (UIView *view in self.contentView.subviews) 
    { 
     if ([view isKindOfClass:[MyCustomView class]] && 
      CGRectContainsPoint(view.frame, touchLocation)) 
     { 

     } 
    } 
} 
+0

К сожалению, 'touchhesMoved' не получает вызова для крана. Никакие сенсорные методы не вызываются одним нажатием пальца. Все они отлично работают для кранов или сковородок с несколькими пальцами или любого другого касания, кроме одного пальца. –

Смежные вопросы