userInteractionEnabled для наложенных блоков touchEvents на нижних UIViews
В приложении для iOS у меня есть UIView, который содержит UIScrollView и оверлейный UIImageView с некоторой прозрачностью.
Представление наложения находится в верхней части UIScrollView, и для userInteractionEnabled установлено значение YES.
Я могу правильно получать сенсорные события на оверлее, но просмотр прокрутки больше не получает их.
Когда для userInteractionEnabled si установлено значение NO на оверлее, тогда я могу правильно выполнить панорамирование в UIScrollView, но очевидно, что оверлей больше не получает сенсорные события.
Как быть в состоянии передать сенсорные события от наложения к просмотру прокрутки, чтобы я все еще мог прокручивать или панорамировать scrollView?
Я пробовал это из оверлея, но это не работает:
- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event
{
<...>
[myParent.myScrollView touchesMoved:touches withEvent:event];
}
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
<...>
[myParent.myScrollView touchesBegan:touches withEvent:event];
}
1 ответ
Создайте пользовательский класс UIView, реализуйте этот метод и установите его в представление наложения в IB
func point(inside point: CGPoint,
with event: UIEvent?) -> Bool {
return true
}