2014-10-22 5 views
6

У меня есть 1 Главного вид и 1 подвид :Override UIGestureRecognizer touchesBegan

Главного Вид> подвид

Я думаю, что Главный вид в "кражу" события из подвида.

Например, когда я нажимаю на подвид только Главный вид GestureRecognizer огонь.

Вот мой заказ GestureRecognizer (который перехватывает каждое касание событие):

import UIKit 
import UIKit.UIGestureRecognizerSubclass 

class MainGestureRecognizer: UIGestureRecognizer { 

    override func touchesBegan(touches: NSSet!, withEvent event: UIEvent!) { 
     super.touchesBegan(touches, withEvent: event); 
     //nextResponder() ?? 

     state = UIGestureRecognizerState.Began; 
    } 

    override func touchesMoved(touches: NSSet!, withEvent event: UIEvent!) { 
     super.touchesMoved(touches, withEvent: event); 
     //nextResponder() ?? 

     state = UIGestureRecognizerState.Changed; 
    } 

    override func touchesEnded(touches: NSSet!, withEvent event: UIEvent!) { 
     super.touchesEnded(touches, withEvent: event); 
     //nextResponder() ?? 

     state = UIGestureRecognizerState.Ended; 
    } 

    override func touchesCancelled(touches: NSSet!, withEvent event: UIEvent!) { 
     super.touchesCancelled(touches, withEvent: event); 
     //nextResponder() ?? 

     state = UIGestureRecognizerState.Cancelled; 
    } 
} 

Может быть, я должен использовать nextResponder, но я только нашел Obj-C код как:

[self.nextResponder touchBegan: затрагивает событиеEvent: event];

What's the trick to pass an event to the next responder in the responder chain?

Is there a way to pass touches through on the iPhone?

Так что вопрос в том, что я должен сделать, чтобы сделать второе событие (подвид событие) огонь тоже?

Есть функция, такая как следующий ответ в Swift?

ответ

1

Ôh! Вот код Swift для nextResponder:

https://stackoverflow.com/a/26510277/4135158

+0

Вы не могли бы разместить код? Я не мог понять, как эта связь вписывается в решение вашей (и моей) проблемы. – Suragch

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