Swift - передает касания из вида перед контроллером вида, в то время как UITapGestureRecognizer все еще имеет вид спереди? - PullRequest
0 голосов
/ 02 марта 2019

У меня есть контроллер представления, который является библиотекой, и я не могу добавить UITapGestureRecognizer в контроллер представления или библиотеку.Что я могу сделать, так это добавить представление поверх контроллера представления и добавить UITapGestureRecognizer к этому представлению.Проблема в том, что вы не можете нажать любую кнопку или получить доступ к какому-либо жесту в контроллере представления за представлением, потому что представление покрывает все.Я ничего не нашел по этому поводу.Возможно ли иметь UITapGestureRecognizer в представлении и позволять другим касаниям или жестам проходить через представление или отправлять их в контроллер представления?

Я пытался использовать следующий класс, который я нашел в другом вопросе дляпредставление, но даже при том, что вы можете получить доступ к кнопкам позади представления, UITapGestureRecognizer в представлении не будет работать с ним

class PassThroughView: UIView {

override func hitTest(_ point: CGPoint, with event: UIEvent?) -> UIView? {
    let hitView = super.hitTest(point, with: event)
    return hitView == self ? nil : hitView
}
...