Я занимаюсь разработкой приложения для рисования на iOS, основной особенностью которого является то, что пользователь может загрузить изображение в качестве фона, а затем начать рисовать пальцем поверх него, увеличивая и панорамируя изображение с помощью рисования поверх самого изображения..
Схема приложения следующая.
MainUiView-> UIScrollView-> UIImageView
Рисование и отслеживание пальцев осуществляется на touchesBegan
, touchesMoved
, touchesEnded
переопределение UIResponder
.
Управление масштабированием и панорамированием UIImageView
осуществляется реализацией UIScrollViewDelegate
.
У меня есть кнопка, которая переключает приложениеперейдите из режима рисования в режим масштабирования и панорамирования следующим образом:
, если вы хотите нарисовать:
[scrollView setUserInteractionEnabled:NO];
[imageView setUserInteractionEnabled:YES];
, чтобы касания управлялись в touchesBegan
, touchesMoved
, touchesEnded
методов.
, если вы хотите выполнять панорамирование и масштабирование двумя пальцами, используя жест Pinch to Zoom
[scrollView setUserInteractionEnabled:YES];
[imageView setUserInteractionEnabled:NO];
, поэтому дважестом пальца управляет UIScrollViewDelegate
сейчас пытаюсьчтобы развить приложение, убрав кнопку переключения из режима рисования в режим масштабирования и панорамирования.
Моя идея состояла в том, чтобы отследить присутствие двух пальцев в touchesBegan
, а затем отключить взаимодействие с пользователем в UIImageView
длявключите взаимодействие с пользователем в просмотре прокрутки, но проблема в том, что после этого все еще обрабатываются в методе touchesMoved
, ничего не доходит до scrollViewDelegate
до тех пор, пока я не уберу пальцы с экрана, после этого, если я нажимаю пальцамиснова на экране все управляется scrollViewDelegate
.
Итак, подведем итог: можно ли остановить цикл касаний после touchesBegan
и распространить его на ScrollViewDelegate
?
Если это невозможно, как я могу добиться увеличения, панорамирования и рисования на UImageView
?Должен ли я удалить вид прокрутки и попытаться увеличить и панорамировать UImageView
с помощью UIResponder
методов?
Спасибо за помощь