VC B является свойством VC A
Я предполагаю, что VC B является дочерним контроллером представления для VC A. Теперь, если представление A покрывает представления VCБ, тогда у вас нет другого выбора, кроме как заставить А реагировать на прикосновения.Аналогично, если это контроллеры автономного вида и автономные виды, нажатие на представление A всегда заставит его реагировать на прикосновения.
То, что вы можете сделать, это обнаружить, когда вы хотите, чтобы представления VC B реагировали на прикосновения на представлении Aи передайте требуемую информацию в VC B. И функция в VC B выполнит требуемую задачу, как вы собираетесь.
Пример:
VC A:
let tapGesture = UITapGestureRecognizer(target:action:)
viewA.addGestureRecognizer(tapGesture)
@objc func handleTap(_ sender: UITapGestureRecognizer) {
//Assuming VC B has been initialized beforehand
vcB.handleGestureFromVCA()
}
VC B:
@objc func handleGestureFromVCA() {
// Code for VC B's views go here
}
Надеюсь, это поможет.Если нет, то, пожалуйста, поделитесь с нами тем, что вы пробовали.