В моем UIView я добавил UIScrollview как subview, а в UIScrollview я добавил UIButtons.
Теперь моя проблема в том, что я хочу знать, будет ли пользователь нажимать кнопку или нет, но touchesbegin из UIScrollview не вызывается там, где все остальные методы делегата прокрутки работают отлично.
Пожалуйста, дайте мне знать, если я делаю что-то неправильно.touchsShouldBegin: withEvent: inContentView: не вызван для UIScrollview
ответ
Если вы просто пытаетесь обрабатывать простые нажатия на кнопку, я предлагаю вам использовать - (void) addTarget: (id) target action: (SEL) action forControlEvents: (UIControlEvents) controlEvents (для получения дополнительной информации об этом смотрите в UIControl) UIButton, иначе мой путь был бы подклассом UIScrollView, добавлением делегата для прикосновений и передачей им на него, но он бесполезен, и я бы не использовал его, если не требуется особо настраиваемое поведение.
текст вашего вопроса не соответствует названию, но для тех, кто нашел их здесь, потому что touchesShouldBegin:withEvent:inContentView
не получает вызов в подклассе UIScrollView
, вот ответ:
Метод touchesShouldBegin:withEvent:inContentView
вызывается только в том случае, если касательное субтитры реагирует на события касания. Если пользователь касается неинтерактивного подзаголовка, такого как UILabel
, этот метод обычно не вызывается. Вы можете заставить его быть вызванным для касаний на любом заданном подвью, установив для свойства subview userInteractionEnabled
значение YES.
Также обратите внимание на состояние вашего вида прокрутки delaysContentTouches
. Если для него установлено значение «ДА», просмотр прокрутки не будет вызывать touchesShouldBegin:withEvent:inContentView:
до истечения таймера, предполагая, что прикосновение вряд ли будет жестом прокрутки. Если вы хотите, чтобы touchesShouldBegin:withEvent:inContentView:
вызывался сразу, установите delaysContentTouches
в НЕТ.
- 1. touchesBegan withEvent не отвечает в uiscrollview
- 2. touchesEnded: withEvent: от UIScrollView First Responder
- 3. touchsShouldBegin Возвращает NO в ScrollView: Тогда что?
- 4. hitTest: withEvent: Не работает
- 5. UIView hitTest: withEvent: и pointInside: withEvent
- 6. Подкласс UIScrollView изменил поведение в iOS7
- 7. UIScrollView Прикосновения переопределить
- 8. pointInside: withEvent:
- 9. continueTrackingWithTouch: withEvent: не вызывается непрерывно
- 10. touchhesMoved: withEvent
- 11. TTScrollView с вложенным UIScrollView
- 12. UITableView (внутри UIScrollView) didSelectRowAtIndexPath: не вызывается при первом касании
- 13. Реализация пользовательского масштабирования для UIScrollView
- 14. motionEnded не вызван в appDelegate
- 15. Прикосновения UIScrollView не работают
- 16. hitTest: WithEvent и Subviews
- 17. touchhesMoved: withEvent: перестает отвечать
- 18. iOS hitTest withEvent
- 19. UIButton TouchUpInside не уволен, но pointInside: withEvent: возвращает ДА
- 20. Переход к контактамВсего: withEvent:
- 21. Как отменить touchesMoved: withEvent:
- 22. touchhesMoved: withEvent: и UIRotationgestureRecognizer не работают вместе
- 23. scrollviewDidEndDragging не вызван в UITableView
- 24. Tableview клетка не может быть выбрана с Трассировкой: WithEvent:
- 25. UIScrollView scrollViewBeginDecelerating не называется
- 26. Обработка событий для iOS - как hitTest: withEvent: и pointInside: withEvent: связаны?
- 27. не получает касаний от UIScrollView
- 28. UIScrollView не масштабируется
- 29. viewDidLoad не вызван для rootViewController
- 30. OnCreateOptionsMenu не вызван для MvxTabsFragmentActivity