Я пытаюсь (и не могу) создать только один tapGestureRecognizer для использования на нескольких UILabels.
Прямо сейчас я создаю для каждой метки в viewDidLoad отдельный tapGestureRecognizer и добавляю ее к соответствующей метке. Я столкнулся с этой проблемой, потому что каждое прикосновение, очевидно, должно вызывать другую функцию.
Вот как я их создаю:
@IBOutlet weak var buttonOne: UILabel!
@IBOutlet weak var buttonTwo: UILabel!
override func viewDidLoad() {
super.viewDidLoad()
//tapGestureRecognizer for buttonOne
buttonOne.isUserInteractionEnabled = true
let oneGestureRecognizer = UITapGestureRecognizer(target: self, action: #selector(MainViewController.buttonOneAction))
buttonOne.addGestureRecognizer(oneGestureRecognizer)
//tapGestureRecognizer for buttonTwo
buttonTwo.isUserInteractionEnabled = true
let twoGestureRecognizer = UITapGestureRecognizer(target: self, action: #selector(MainViewController.buttonTwoAction))
buttonTwo.addGestureRecognizer(twoGestureRecognizer)
...
Они прекрасно работают, но как и где я могу создать всего один tapGestureRecognizer и добавить его в viewDidLoad к каждой метке с другим действием?