У меня возникла проблема, когда первый звонок touchesBegan:withEvent:
на UIView
или UIViewController
задерживается при касании левого края экрана. Это, похоже, новая проблема с iOS 10, и это происходит только на устройствах с 3D Touch (iPhone 6s и новее). Фактически, если вы отключите 3D-коснуться в целом -> Доступность, проблема исчезнет.`touchesBegan: withEvent:` задерживается на левом краю экрана
Однако проблема не возникает, если вы используете UIGestureRecognizers
. Моим обходным решением на данный момент является создание подкласса UIGestureRecognizer
, который переопределяет методы touches*
и пересылает их к моей старой реализации.
Это просто ошибка или есть способ избавиться от задержки?
Hm Я вижу, как это будет решить непосредственную проблему, но баловаться с системой жеста распознавателями кажется, что это будет вызывать больше проблем, вниз по линии – Jayson
я еще некоторые исследований и это кажется лучшим решением на данный момент. Эти распознаватели жестов являются экземплярами '_UISystemGestureGateGestureRecognizer' и, по-видимому, в основном используются, чтобы убедиться, что ваше приложение лучше взаимодействует с системными жестами, такими как центр управления или переключения 3D-приложений. Для левого края я полагаю, что задержка была добавлена, чтобы предотвратить случайное взаимодействие приложения, когда пользователь пытается переключать приложения, но в моем случае мне нужны отзывчивые штрихи на левом краю, и все в порядке, если прикосновения срабатывают, когда пользователи пытаются переключать приложения , – Jayson