Подтвердить что ты не робот

Анимированный UIWebView не реагирует на касания во время анимации

На данный момент я анимация UIWebView снизу экрана вверх. По мере того, как UIWebView анимируется вверх, он становится неприкосновенным в течение 50-80% времени продолжительности.

Если я коснусь конечного адресата UIWebviews или уровня модели, отметки регистрируются и Webview отвечает соответствующим образом.

Почему это? И какие решения существуют для прослушивания перемещения/анимации UIWebviews?

Чтобы проиллюстрировать это, я создал побочный проект, который показывает анимацию UIWebView вверх. Фиолетовые квадраты представляют события касания на слое представления, в то время как синие квадраты представляют события касания вне уровня представления.

https://github.com/AdamBCo/UIWebView-Animation-Issues

Как видно из примера, UIViewAnimationOptionAllowUserInteraction устанавливается в блок UViewAnimation.

4b9b3361

Ответ 1

A UIWebView - это сложная компоновка веб-элементов. Чтобы перерисовать это во время анимации, просто недостаточно времени, чтобы полностью перерисовать UIWebView, сохранить доступные в нем элементы управления для взаимодействия и сделать анимацию.

Однако есть некоторые настройки для этого внутри CALayer, что делать с его содержимым при анимации. Я бы начал изучать это.