привет, я наблюдаю что-то странное в пользовательских представлениях iOS, где у меня есть кнопка внутри пользовательского представления, я ищу документацию или ваш ответ, чтобы объяснить, почему у меня есть это наблюдение
у меня есть пользовательский вид (подкласс UIView), он содержит простую кнопку, я привязываю событие касания кнопки через addTarget: Action с UITouchUpInside, я просто привязываю его селектор к простому методу, который NSLog сообщение
если вы отобразите пользовательский вид и нажмете кнопку, вы увидите сообщение в консоли, все работает как положено.
Однако, если вы добавите UIGestureReognizer в пользовательское представление и запустите его, когда вы нажмете кнопку, он больше не печатает сообщение ПОЧЕМУ??? я провел более глубокое исследование и, посмотрев на метод hittest В CUSTOM VIEW (представление содержит кнопку) (я переопределяю его, но я ничего не делал, я просто снова вызываю super), метод hittest возвращает правильное представление, т.е. когда я нажимаю кнопку, самый популярный метод пользовательского представления возвращает UIButton
я не понимаю здесь цепочку событий, может ли кто-нибудь указать документацию, объясняющую это?
мне кажется, когда вы добавляете регонизатор в представление контейнера кнопки, по какой-то причине кнопка НЕ ЗНАЕТ, как обработать событие, поэтому она просит свой супервью (в данном случае кастомный вид) обработать его, но почему ?? я уже привязал обработчик события к кнопке через UITouchUPInside
пожалуйста, помогите, я хочу понять это