Как остановить UIScrollView получать события касания от родительского представления?

У меня есть UIView содержащий UIScrollView . Этот UIView должен реагировать на некоторые события касания, но он не отвечает из-за содержащегося в нем scrollView.

Этот контент- contentView установлен в MoviePlayer внутри OuterView. Теперь, когда я нажимаю в области, где находится MoviePlayer, события касания моего OuterView не реагируют.

Я даже установил userInteraction проигрывателя userInteraction NO .

но теперь scrollView мешает.

Я упомянул этот пост о СА.

Как супервизор может перехватить сенсорную последовательность перед любым ее подзоном?

Но решение там, попросит меня установить userInteractionEnabled для NO для scrollView. Но если я это сделаю, мое масштабирование не произойдет!

Что делать?

UIScrollView перехватывает все события касания, потому что он должен решить, если / когда пользователь движется пальцем, чтобы прокрутить прокрутку. Вы можете захотеть подклассифицировать UIView, затем в

 - (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)evt; - (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)evt; - (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)evt; 

методы, проверьте необходимые касания, затем переместите все эти методы на ваш UIScrollViewInstance. Например:

 #import <Foundation/Foundation.h> #import <UIKit/UIKit.h> @interface MyView: UIView { UIScrollView *scrollView; } @end @implementation MyView /* don't forget to alloc init your ScrollView init -init and release it in -dealloc! Then add it as a subview of self. */ - (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)evt { /* check for a gesture */ [scrollView touchesBegan:touches withEvent:evt]; } - (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)evt; { /* check for a gesture */ [scrollView touchesMoved:touches withEvent:evt]; } - (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)evt; { /* check for a gesture */ [scrollView touchesEnded:touches withEvent:evt]; } @end 
  • UITextView: процесс «Link-ification» / dataDetector медленный
  • Сделайте снизу UITableview вверх с клавиатурой
  • как я могу получить объект PDF (строка, изображение и т. д.), который был затронут пользователем?
  • Swift UItableView Пользовательская ячейка программно (документация)?
  • как сделать сетку 9 * 9 в Objective C под Xcode 4.3?
  • Тень не появляется для UIView с использованием CALayer
  • UIControlEventTouchDragExit запускает, когда 100 пикселей от UIButton
  • UITextView должен обнаруживать ссылки, но в противном случае должен распространяться прикосновение к виду ниже
  • Дифференцируйте касание пальца и руки / подставки для рук
  • Проблема с UIPopoverController presentPopoverFromRect
  • Как вы можете сделать UIView с закругленными верхними углами и квадратными нижними углами
  • Interesting Posts

    Как перенести многоплатформенное приложение в React Native?

    interactivePopGestureRecognizer – pop или back to curent view controller

    IOS: возможно ли связать один контроллер представлений панели объявлений с несколькими разными классами?

    Невозможно скомпилировать источники в Xcode 6 выше бета-версии 5

    как перемещать inputView над клавиатурой при прокрутке таблицы

    Найти UIAlertView без ссылки на него

    ios9 mobile safari пейзаж css ошибка с положением: абсолютное дно: 0

    Снимок iPhone, включая клавиатуру

    Как отклонить SplashView в стиле Pagecurl в iPhone?

    как включить косвенный указатель в Objective-C

    Создание программного программирования

    Swift 4 – iOS 11 Область поиска не будет отображаться так, как должна

    iOS при вызове веб-службы, сервер с указанным именем хоста не найден

    Обрезка UIImagePickerControllerOriginalImage с использованием UIImagePickerControllerCropRect возвращает неправильное изображение

    клавиатура в UIWebView показывает, а затем прячется на фокусе ввода

    Давайте будем гением компьютера.