Если вы хотите, чтобы UIScrollView прокручивал только программно, вы должны создать его подкласс и переопределить методы touchesBegan / Moved / Cancelled / Ended. Даже тогда у вас могут быть проблемы. UIScrollView не был разработан, чтобы игнорировать пользовательский ввод.
Если возможно, вы должны заменить UIScrollView на пользовательский вид. Вместо изменения contentOffset
вы можете изменить свойство представления transform
, чтобы перемещать его содержимое.
Или вы можете вкладывать два вида, внешний вид и внутренний вид. Поместите ваш досок вид внутри. Затем, вместо изменения contentOffset
, измените внутренний вид frame
.
Если анимация важна, я уверен, что второй вариант обеспечит анимированный переход, и первый тоже может.