Как вы указываете приоритет того же типа UIGestureRecognizer?

В зависимости от того, как вы выполняете команду, вы можете поместить /k после cmd, чтобы открыть окно.

cmd /k my_script.bat
0
задан casperson 17 January 2019 в 09:35
поделиться

1 ответ

Это не ответ на вопрос, как определить приоритет, но я могу решить вашу проблему . Я не думаю, что вам нужно использовать приоритет жестов, если к одному представлению не прикреплено два жеста. В вашем случае у вас есть два представления с их собственным жестом.

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

Я создал две простые коробки с жестами крана на детской площадке ...

import UIKit
import PlaygroundSupport

class MyViewController : UIViewController {
    override func loadView() {
        let view = UIView()
        view.backgroundColor = .white

        let innerView = UIView()
        innerView.backgroundColor = UIColor.red

        view.addSubview(innerView)
        innerView.translatesAutoresizingMaskIntoConstraints = false
        innerView.centerYAnchor.constraint(equalTo: view.centerYAnchor).isActive = true
        innerView.centerXAnchor.constraint(equalTo: view.centerXAnchor).isActive = true
        innerView.widthAnchor.constraint(equalToConstant: 100).isActive = true
        innerView.heightAnchor.constraint(equalToConstant: 100).isActive = true

        self.view = view

        let outTapGesture = UITapGestureRecognizer(target: self, action: #selector(outterViewTapped))
        let innerTapGesture = UITapGestureRecognizer(target: self, action: #selector(innerViewTapped))

        view.addGestureRecognizer(outTapGesture)
        innerView.addGestureRecognizer(innerTapGesture)
    }

     @objc func outterViewTapped() {
       print("Outter tapped!")
     }

     @objc func innerViewTapped() {
       print("Inner tapped!")
     }
}
// Present the view controller in the Live View window
PlaygroundPage.current.liveView = MyViewController()
0
ответ дан Mocha 17 January 2019 в 09:35
поделиться
Другие вопросы по тегам:

Похожие вопросы: