Эффект слайда для iOS

#ios #animation #uiview

#iOS #Анимация #uiview

Вопрос:

Я новичок в разработке приложений для iOS, я успешно внедрил распознаватель жестов салфетки, мне было интересно, есть ли простой в использовании распознаватель, подобный жесту салфетки. Это позволило бы вам реализовать эффект перелистывания страниц на рабочем столе, но только для небольшого представления в контроллере представления?

Если вам неясно, какой эффект я имею в виду, когда вы смотрите на рабочий стол iPhone, вы можете провести пальцем, и он реагирует мгновенно (в отличие от салфетки), а также имеет некоторое ощущение весны, это какой-то эффект, который я могу использовать, или мне вручную нужно запрограммировать это в коде, если да, есть ли руководство, объясняющее это?

Спасибо, я надеюсь, что мой вопрос имеет смысл.

Комментарии:

1. UIScrollView

Ответ №1:

Взгляните на UIPanGestureRecognizer : https://developer.apple.com/library/ios/documentation/uikit/reference/UIPanGestureRecognizer_Class/Reference/Reference.html

UIPanGestureRecognizer — это конкретный подкласс UIGestureRecognizer, который ищет жесты панорамирования (перетаскивания). Пользователь должен нажимать одним или несколькими пальцами на вид во время его панорамирования. Клиенты, реализующие метод действия для этого средства распознавания жестов, могут запросить у него текущий перевод и скорость жеста.

Жест панорамирования является непрерывным. Это начинается (UIGestureRecognizerStateBegan), когда минимальное количество разрешенных пальцев (minimumNumberOfTouches) переместилось достаточно, чтобы считаться панорамированием. Он изменяется (UIGestureRecognizerStateChanged), когда палец перемещается, когда нажато хотя бы минимальное количество пальцев. Это заканчивается (UIGestureRecognizerStateEnded), когда все пальцы подняты.

Клиенты этого класса могут в своих методах действия запрашивать у объекта UIPanGestureRecognizer текущую трансляцию жеста (translationInView:) и скорость трансляции (velocityInView:). Они могут указать вид, система координат которого должна использоваться для значений перемещения и скорости. Клиенты также могут сбросить перевод до желаемого значения.

Редактировать: часть с ощущением весны, которую вам нужно будет реализовать самостоятельно. Начиная с iOS 7 существует, UIDynamics который содержит разные аниматоры, для того, что вы описываете, вам может понадобиться UIGravityBehavior и, возможно UICollisionBehaviour . Посмотрите видеоролики WWDC 2013 по этой теме, я думаю, вы найдете там несколько примеров.