Если Вы хотите обнаружить касания в каком-либо из подпредставлений UIScrollView, необходимо будет разделить UIScrollView на подклассы и переопределить touchesShouldBegin
и touchesShouldCancelInContentView
методы, которые конкретно создаются с этой целью.
Кроме этого, нет никакого способа, которым можно определить касания в подпредставлениях, поскольку UIScrollView склонен обрабатывать весь, касается себя и не передает их его подпредставлениям.
Все самое лучшее.
UIScrollView имеет свойство scrollEnabled , которое позволяет Вам отключать прокрутку программно. Это также имеет делегата (UIScrollViewDelegate), который позволяет Вам видеть события, такие как прокрутка запуска/окончания. Кажется, что необходимо смочь приготовить что-то с теми опциями, объединенными в некотором роде.
Вы можете также sublcass UIScrollViewController и переопределять touchesBegan, touchesMoved и touchesEnded методы. Если Ваша реализация никогда не будет называть реализацию суперкласса, то она не прокрутит.
Самый простой способ сделать это установлено delayContentTouches
на NO
для scrollview. Тем путем поведение по умолчанию установлено так, чтобы что-либо, что является UIControl, передало касания на управление сразу andeverything, еще прокрутит.