У меня есть UIScrollView
и UITapGestureRecognizer
, оба довольно простые, и я заставил их работать вместе всеми способами, которые мне нужны, кроме одного. UIScrollView
не использует масштабирование, а UITapGestureRecognizer
пока просто пишет в консоль.
Я могу заставить UITapGestureRecognizer
писать в консоль, когда нажимается UIScrollView
, либо в стационарном состоянии, либо при анимации через setContentOffset
, но я не могу заставить его работать, когда UIScrollView
движется из-за смахивания. Когда UIScrollView
прокручивается и все еще находится в движении, первое нажатие после пролистывания остановит его движение, а затем UITapGestureRecognizer
улавливает только второе нажатие. Я надеюсь получить первый тап, чтобы остановить прокрутку UIScrollView
, а также записать в консоль через UITapGestureRecognizer
.
Я надеюсь, что моя проблема здесь просто из-за пробела в моих знаниях о UIScrollView
или UITapGestureRecognizer
, и есть только свойство, которое можно установить, чтобы исправить это, но до сих пор никакое чтение не помогло мне с этой проблемой. Любые идеи о том, возможно ли это?
Изменить: спасибо за предложения, см. ниже
Извините, я не думаю, что я очень хорошо объяснил. Я понимаю, что первое движение на стационарном UIScrollView
— это смахивание (которое в моем случае просто обрабатывается UIScrollView
кстати, а не распознавателем жестов).
Проблема заключается в том, что после смахивания и отпускания, если вы нажмете во время движения (и никаких других касаний не происходит), UITapGestureRecognizer
не улавливает его, а только улавливает UIScrollView
и останавливает движение UIScrollView
. Если вы позволите ему замедлиться, а затем нажмите, это работает нормально. Кроме того, если он движется из-за анимации, а не смахивания, нажатие также работает нормально.
То же самое и при использовании `UILongPressGestureRecognizer', который я хочу использовать в идеале, но подумал, что если я не смогу заставить его работать одним касанием, у меня нет шансов!