Как бы вы позволили UIGestureRecognizer
из UIView
получить событие касания, но также убедиться, что другой, лежащий / накладывающийся UIView
также получит то же самое событие касания?
Допустим, у меня есть следующее представление-иерархия:
Представления A (синий) и B (красный) являются подпредставлениями одного и того же суперпредставления (серый). Другими словами, они оба являются братьями и сестрами, и порядок решает, какой из них охватывает другого.
Вариант 1:
Представление B (красное) имеет регулярное UIButton
в качестве своего подпредставления.
Вариант 2:
Представление A (синее) имеет регулярное UIButton
в качестве своего подпредставления.
Дан Вариант 1 ради пояснений:
Представление A (синее) имеет UITapGestureRecognizer
(или, может быть, даже больше, другие UIGestureRecognizer). Какой был бы самый элегантный подход, чтобы убедиться, что UIButton
получает все касания в своей области, но также и представление A (синее) получает эти касания в UITapGestureRecognizer
?
Если это возможно любым способом, решение не должно включать расширение класса UIButton
и ручную пересылку любых событий с самой кнопки. Представьте себе, что представление B будет содержать гораздо больше элементов управления, а не просто кнопку. Все эти элементы управления должны как-то позволять представлению А получать прикосновения к UIGestureRecognizer
.
Я предоставил два варианта, так как мне все равно, какой из этих видов (A или B) будет первым, если оба получат прикосновения.
Все мои подходы так внезапно зашли в тупик. Может быть, цепочка респондента была бы хорошим решением? Я продолжаю думать, что должно быть элегантное решение во всем стеке UIKit
/ UIEvent
/ UIResponder
.