UIScrollView предотвращает прикосновения
Я обрабатываю штрихи для нескольких моих компонентов пользовательского интерфейса в моем контроллере представления (пользовательский подкласс UIViewController). У него есть методыtouchesBegan:withEvent:
, touchesMoved:withEvent:
, а такжеtouchesEnded:withEvent:
, Работало нормально. Затем я добавил вид прокрутки (UIScrollView) как вид сверху в иерархии.
Теперь мои сенсорные обработчики на контроллере вида не работают. Им не звонят. Интересно то, что у меня есть несколько других компонентов пользовательского интерфейса в представлении прокрутки, которые работают. Некоторые из них являются кнопками, некоторые являются пользовательскими представлениями, которые определяют их собственныеtouchesBegan:withEvent:
и т. д. Единственное, что не работает - это сенсорные обработчики на контроллере вида.
Я подумал, может быть, это потому, что представление прокрутки перехватывает эти прикосновения для своих собственных целей, но я подклассифицировал UIScrollView и просто чтобы посмотреть, смогу ли я заставить его работать, я возвращаюYES
всегда изtouchesShouldBegin:withEvent:inContentView:
а такжеNO
всегда изtouchesShouldCancelInContentView:
, Все еще не работает.
Если это имеет значение, мой контроллер представления находится в контроллере панели вкладок, но я не думаю, что это актуально.
У кого-нибудь была эта проблема и есть готовое решение? Я предполагаю, что представление прокрутки обезьян вверх по цепочке респондента. Могу ли я вернуть его обратно? Я предполагаю, что если я не смогу понять что-либо еще, я сделаю представление верхнего уровня под моим представлением прокрутки как пользовательское представление и перенаправлю сообщения на контроллер представления, но кажется глупым.