Как распознать пролистывание во всех 4 направлениях
Мне нужно использовать движение пальцем, чтобы распознать жест смахивания вниз, а затем вправо. Но на быстром UISwipeGestureRecognizer предопределено правильное направление.. И я не знаю, как сделать это для использования в других направлениях..
22 ответа
Вам нужно иметь один UISwipeGestureRecognizer
для каждого направления. Это немного странно, потому что UISwipeGestureRecognizer.direction
Свойство является битовой маской в стиле параметров, но каждый распознаватель может обрабатывать только одно направление. Вы можете отправить их все в один и тот же обработчик, если хотите, и отсортировать их там, или отправить их различным обработчикам. Вот одна из реализаций:
override func viewDidLoad() {
super.viewDidLoad()
var swipeRight = UISwipeGestureRecognizer(target: self, action: "respondToSwipeGesture:")
swipeRight.direction = UISwipeGestureRecognizerDirection.Right
self.view.addGestureRecognizer(swipeRight)
var swipeDown = UISwipeGestureRecognizer(target: self, action: "respondToSwipeGesture:")
swipeDown.direction = UISwipeGestureRecognizerDirection.Down
self.view.addGestureRecognizer(swipeDown)
}
func respondToSwipeGesture(gesture: UIGestureRecognizer) {
if let swipeGesture = gesture as? UISwipeGestureRecognizer {
switch swipeGesture.direction {
case UISwipeGestureRecognizerDirection.Right:
print("Swiped right")
case UISwipeGestureRecognizerDirection.Down:
print("Swiped down")
case UISwipeGestureRecognizerDirection.Left:
print("Swiped left")
case UISwipeGestureRecognizerDirection.Up:
print("Swiped up")
default:
break
}
}
}
Свифт 3:
override func viewDidLoad() {
super.viewDidLoad()
let swipeRight = UISwipeGestureRecognizer(target: self, action: #selector(self.respondToSwipeGesture))
swipeRight.direction = UISwipeGestureRecognizerDirection.right
self.view.addGestureRecognizer(swipeRight)
let swipeDown = UISwipeGestureRecognizer(target: self, action: #selector(self.respondToSwipeGesture))
swipeDown.direction = UISwipeGestureRecognizerDirection.down
self.view.addGestureRecognizer(swipeDown)
}
func respondToSwipeGesture(gesture: UIGestureRecognizer) {
if let swipeGesture = gesture as? UISwipeGestureRecognizer {
switch swipeGesture.direction {
case UISwipeGestureRecognizerDirection.right:
print("Swiped right")
case UISwipeGestureRecognizerDirection.down:
print("Swiped down")
case UISwipeGestureRecognizerDirection.left:
print("Swiped left")
case UISwipeGestureRecognizerDirection.up:
print("Swiped up")
default:
break
}
}
}
Я просто хотел внести свой вклад, выглядит более элегантно в конце:
func addSwipe() {
let directions: [UISwipeGestureRecognizerDirection] = [.Right, .Left, .Up, .Down]
for direction in directions {
let gesture = UISwipeGestureRecognizer(target: self, action: Selector("handleSwipe:"))
gesture.direction = direction
self.addGestureRecognizer(gesture)
}
}
func handleSwipe(sender: UISwipeGestureRecognizer) {
print(sender.direction)
}
Из раскадровки:
- Добавьте к вашему виду четыре распознавателя жестов.
- Установите каждый с целевым направлением от инспектора атрибута. Вы можете выбрать вправо, влево, вверх или вниз
- Один за другим выберите распознаватель жестов смахивания, удерживая клавишу Ctrl + перетащите на контроллер вида. Вставьте имя (скажем, leftGesture, rightGesture, upGesture и downGesture), измените соединение на: Действие и введите: UISwipeGestureRecognizer
С вашего viewController:
@IBAction func rightGesture(sender: UISwipeGestureRecognizer) {
print ("Right")
}
@IBAction func leftGesture(sender: UISwipeGestureRecognizer) {
print ("Left")
}
@IBAction func upGesture(sender: UISwipeGestureRecognizer) {
print = ("Up")
}
@IBAction func downGesture(sender: UISwipeGestureRecognizer) {
print ("Down")
}
Похоже, за последнее время все изменилось. В XCode 7.2 работает следующий подход:
override func viewDidLoad() {
super.viewDidLoad()
let swipeGesture = UISwipeGestureRecognizer(target: self, action: "handleSwipe:")
swipeGesture.direction = [.Down, .Up]
self.view.addGestureRecognizer(swipeGesture)
}
func handleSwipe(sender: UISwipeGestureRecognizer) {
print(sender.direction)
}
Протестировано в Симуляторе на iOS 8.4 и 9.2 и на реальном устройстве на 9.2.
Или, используя удобное расширение mlcollard здесь:
let swipeGesture = UISwipeGestureRecognizer() {
print("Gesture recognized !")
}
swipeGesture.direction = [.Down, .Up]
self.view.addGestureRecognizer(swipeGesture)
Apple Swift версии 3.1 - Xcode версии 8.3 (8E162)
Удобный путь от подхода Александра Кассана
let directions: [UISwipeGestureRecognizerDirection] = [.up, .down, .right, .left]
for direction in directions {
let gesture = UISwipeGestureRecognizer(target: self, action: #selector(YourClassName.handleSwipe(gesture:)))
gesture.direction = direction
self.view?.addGestureRecognizer(gesture)
}
func handleSwipe(gesture: UISwipeGestureRecognizer) {
print(gesture.direction)
switch gesture.direction {
case UISwipeGestureRecognizerDirection.down:
print("down swipe")
case UISwipeGestureRecognizerDirection.up:
print("up swipe")
case UISwipeGestureRecognizerDirection.left:
print("left swipe")
case UISwipeGestureRecognizerDirection.right:
print("right swipe")
default:
print("other swipe")
}
}
В Swift 4.2 и Xcode 9.4.1
Добавьте делегата анимации CAAnimationDelegate в свой класс
//Swipe gesture for left and right
let swipeFromRight = UISwipeGestureRecognizer(target: self, action: #selector(didSwipeLeft))
swipeFromRight.direction = UISwipeGestureRecognizerDirection.left
menuTransparentView.addGestureRecognizer(swipeFromRight)
let swipeFromLeft = UISwipeGestureRecognizer(target: self, action: #selector(didSwipeRight))
swipeFromLeft.direction = UISwipeGestureRecognizerDirection.right
menuTransparentView.addGestureRecognizer(swipeFromLeft)
//Swipe gesture selector function
@objc func didSwipeLeft(gesture: UIGestureRecognizer) {
//We can add some animation also
DispatchQueue.main.async(execute: {
let animation = CATransition()
animation.type = kCATransitionReveal
animation.subtype = kCATransitionFromRight
animation.duration = 0.5
animation.delegate = self
animation.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseInEaseOut)
})
}
//Swipe gesture selector function
@objc func didSwipeRight(gesture: UIGestureRecognizer) {
// Add animation here
DispatchQueue.main.async(execute: {
let animation = CATransition()
animation.type = kCATransitionReveal
animation.subtype = kCATransitionFromLeft
animation.duration = 0.5
animation.delegate = self
animation.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseInEaseOut)
})
}
Таким образом, вы можете написать оставшиеся направления и, пожалуйста, будьте осторожны, если у вас есть вид прокрутки или нет снизу вверх и наоборот
Проведите пальцем по экрану, который вы хотите, или viewcontroller полностью, в Swift 5 и XCode 11 на основе @Alexandre Cassagne
override func viewDidLoad() {
super.viewDidLoad()
addSwipe()
}
func addSwipe() {
let directions: [UISwipeGestureRecognizer.Direction] = [.right, .left, .up, .down]
for direction in directions {
let gesture = UISwipeGestureRecognizer(target: self, action: #selector(handleSwipe))
gesture.direction = direction
self.myView.addGestureRecognizer(gesture)// self.view
}
}
@objc func handleSwipe(sender: UISwipeGestureRecognizer) {
let direction = sender.direction
switch direction {
case .right:
print("Gesture direction: Right")
case .left:
print("Gesture direction: Left")
case .up:
print("Gesture direction: Up")
case .down:
print("Gesture direction: Down")
default:
print("Unrecognized Gesture Direction")
}
}
Свифт 5+
Добавьте желаемые жесты к некоторым
UIView
:
[UISwipeGestureRecognizer.Direction.up, .down, .left, .right].forEach {
let gesture = UISwipeGestureRecognizer(target: self, action: #selector(swiped))
gesture.direction = $0
someView.addGestureRecognizer(gesture)
}
Обработка действий смахивания:
@objc func swiped(_ gesture: UISwipeGestureRecognizer) {
switch gesture.direction {
case .up: print("up")
case .down: print("down")
case .left: print("left")
case .right: print("right")
default: break
}
}
UISwipeGestureRecognizer
имеет direction
свойство, которое имеет следующее определение:
var direction: UISwipeGestureRecognizerDirection
Разрешенное направление пролистывания для этого распознавателя жестов.
Проблема с Swift 3.0.1 (и ниже) в том, что даже если UISwipeGestureRecognizerDirection
соответствует OptionSet
следующий фрагмент будет скомпилирован, но не даст никакого положительного ожидаемого результата:
// This compiles but does not work
let gesture = UISwipeGestureRecognizer(target: self, action: #selector(gestureHandler))
gesture.direction = [.right, .left, .up, .down]
self.addGestureRecognizer(gesture)
В качестве обходного пути вам придется создать UISwipeGestureRecognizer
для каждого желаемого direction
,
Следующий код Playground показывает, как реализовать несколько UISwipeGestureRecognizer
для того же UIView
и то же самое selector
используя массив map
метод:
import UIKit
import PlaygroundSupport
class SwipeableView: UIView {
convenience init() {
self.init(frame: CGRect(x: 100, y: 100, width: 100, height: 100))
backgroundColor = .red
[UISwipeGestureRecognizerDirection.right, .left, .up, .down].map({
let gesture = UISwipeGestureRecognizer(target: self, action: #selector(gestureHandler))
gesture.direction = $0
self.addGestureRecognizer(gesture)
})
}
func gestureHandler(sender: UISwipeGestureRecognizer) {
switch sender.direction {
case [.left]: frame.origin.x -= 10
case [.right]: frame.origin.x += 10
case [.up]: frame.origin.y -= 10
case [.down]: frame.origin.y += 10
default: break
}
}
}
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
view.backgroundColor = .white
view.addSubview(SwipeableView())
}
}
let controller = ViewController()
PlaygroundPage.current.liveView = controller
Жест смахивания в Swift 5
override func viewDidLoad() {
super.viewDidLoad()
let swipeLeft = UISwipeGestureRecognizer(target: self, action: #selector(handleGesture))
swipeLeft.direction = .left
self.view!.addGestureRecognizer(swipeLeft)
let swipeRight = UISwipeGestureRecognizer(target: self, action: #selector(handleGesture))
swipeRight.direction = .right
self.view!.addGestureRecognizer(swipeRight)
let swipeUp = UISwipeGestureRecognizer(target: self, action: #selector(handleGesture))
swipeUp.direction = .up
self.view!.addGestureRecognizer(swipeUp)
let swipeDown = UISwipeGestureRecognizer(target: self, action: #selector(handleGesture))
swipeDown.direction = .down
self.view!.addGestureRecognizer(swipeDown)
}
@objc func handleGesture(gesture: UISwipeGestureRecognizer) -> Void {
if gesture.direction == UISwipeGestureRecognizer.Direction.right {
print("Swipe Right")
}
else if gesture.direction == UISwipeGestureRecognizer.Direction.left {
print("Swipe Left")
}
else if gesture.direction == UISwipeGestureRecognizer.Direction.up {
print("Swipe Up")
}
else if gesture.direction == UISwipeGestureRecognizer.Direction.down {
print("Swipe Down")
}
}
import UIKit
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
let leftside = UISwipeGestureRecognizer(target: self, action: #selector(swiped))
leftside.direction = .left
view.addGestureRecognizer(leftside)
let rightside = UISwipeGestureRecognizer(target: self, action: #selector(swiped))
rightside.direction = .right
view.addGestureRecognizer(rightside)
let upside = UISwipeGestureRecognizer(target: self, action: #selector(swiped))
upside.direction = .up
view.addGestureRecognizer(upside)
let downside = UISwipeGestureRecognizer(target: self, action: #selector(swiped))
downside.direction = .down
view.addGestureRecognizer(downside)
// Do any additional setup after loading the view, typically from a nib.
}
@objc func swiped(gesture: UIGestureRecognizer){
if let swipeGesture = gesture as? UISwipeGestureRecognizer{
switch swipeGesture.direction{
case UISwipeGestureRecognizer.Direction.left:
view.backgroundColor = UIColor.red
case UISwipeGestureRecognizer.Direction.right:
view.backgroundColor = UIColor.yellow
case UISwipeGestureRecognizer.Direction.up:
view.backgroundColor = UIColor.green
case UISwipeGestureRecognizer.Direction.down:
view.backgroundColor = UIColor.blue
default:
"ERROR"
}
}
}
}
Сначала создайте baseViewController
и добавить viewDidLoad
this code "swift4":
class BaseViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
let swipeRight = UISwipeGestureRecognizer(target: self, action: #selector(swiped))
swipeRight.direction = UISwipeGestureRecognizerDirection.right
self.view.addGestureRecognizer(swipeRight)
let swipeLeft = UISwipeGestureRecognizer(target: self, action: #selector(swiped))
swipeLeft.direction = UISwipeGestureRecognizerDirection.left
self.view.addGestureRecognizer(swipeLeft)
}
// Example Tabbar 5 pages
@objc func swiped(_ gesture: UISwipeGestureRecognizer) {
if gesture.direction == .left {
if (self.tabBarController?.selectedIndex)! < 5 {
self.tabBarController?.selectedIndex += 1
}
} else if gesture.direction == .right {
if (self.tabBarController?.selectedIndex)! > 0 {
self.tabBarController?.selectedIndex -= 1
}
}
}
}
И использовать это baseController
учебный класс:
class YourViewController: BaseViewController {
// its done. Swipe successful
//Now you can use all the Controller you have created without writing any code.
}
Мне нравится подход (расширение) @Fattie, который я давно использую для жестов касания, за исключением расширения UIView вместо UIViewController. Это отличная возможность сэкономить время. Поскольку вы можете не захотеть включать все четыре декартовых направления, я по умолчанию использую nil для каждого селектора, чтобы проверить наличие параметров, чтобы сделать активацию жеста для любого заданного направления необязательным.
Я сделал имена параметров немного длиннее, чтобы ускорить обратный инжиниринг при беглом просмотре кода, и перегрузил имя функции, а почему бы и нет?
extension UIView {
func addSwipeRecognizer(direction: UISwipeGestureRecognizer.Direction, target: Any, action: Selector) {
let recognizer = UISwipeGestureRecognizer(target: target, action: action)
recognizer.direction = direction
addGestureRecognizer(recognizer)
}
func addSwipeRecognizer(target: Any, left: Selector? = nil, right: Selector? = nil, up: Selector? = nil, down: Selector? = nil) {
if let left { addSwipeRecognizer(direction: .left, target: target, action: left) }
if let right { addSwipeRecognizer(direction: .right, target: target, action: right) }
if let up { addSwipeRecognizer(direction: .up, target: target, action: up) }
if let down { addSwipeRecognizer(direction: .down, target: target, action: down) }
}
func addTapRecognizer(tapNumber: Int, target: Any, action: Selector) {
let tap = UITapGestureRecognizer(target: target, action: action)
tap.numberOfTapsRequired = tapNumber
addGestureRecognizer(tap)
isUserInteractionEnabled = true
}
}
Использование:
@objc func viewSwipedLeft() { }
@objc func viewSwipedRight() { }
@objc func viewSwipedUp() { }
@objc func viewSwipedDown() { }
view.addSwipeRecognizer(target: self,
left: #selector(viewSwipedLeft),
right: #selector(viewSwipedRight),
up: #selector(viewSwipedUp),
down: #selector(viewSwipedDown))
В Swift 5
let swipeGesture = UISwipeGestureRecognizer(target: self, action: #selector(handleSwipe))
swipeGesture.direction = [.left, .right, .up, .down]
view.addGestureRecognizer(swipeGesture)
Покопавшись немного:
Самый короткий путь к добавить пойло для всех 4 -й направлений является:
override func viewDidLoad() {
super.viewDidLoad()
for direction in [UISwipeGestureRecognizer.Direction.down, .up, .left, .right]{
let swipeGest = UISwipeGestureRecognizer(target: self, action: #selector(swipeAction(_:)))
swipeGest.direction = direction
self.view.addGestureRecognizer(swipeGest)
}
}
@objc func swipeAction(_ gesture: UISwipeGestureRecognizer){
switch gesture.direction {
case UISwipeGestureRecognizer.Direction.right:
print("Swiped right")
case UISwipeGestureRecognizer.Direction.down:
print("Swiped down")
case UISwipeGestureRecognizer.Direction.left:
print("Swiped left")
case UISwipeGestureRecognizer.Direction.up:
print("Swiped up")
default: break
}
На 2022 год
Вот как вы, вероятно, написали бы это в любом реальном коде.
Вы никогда не будете загромождать свой код VC всем шаблоном.
В вашем контроллере представления...
override func viewDidLoad() {
super.viewDidLoad()
pentaSceneView.buildFresh()
addSwipesLRUD(#selector(swipeLeft), #selector(swipeRight),
#selector(swipeUp), #selector(swipeDown))
}
и ...
@objc func swipeLeft() {
blah ...
}
@objc func swipeRight() {
blah ...
}
@objc func swipeUp() {
blah ...
}
@objc func swipeDown() {
blah ...
}
Следует ли использовать оператор switch? Ответ: НЕТ, не надо.
Код Apple не то чтобы неисправен, а просто «невероятно глуп», и они продолжают его менять. Оператор switch не элегантнее и не короче, чем четыре функции, и, скорее всего, он сломается, когда Apple (снова) слегка изменит или рационализирует способ..direction
работает.
Вот простое необходимое расширение.
Поместите это в любой файл вашего проекта, скажем, «Utils.swift». Каждый реальный проект имеет файл типа «расширения здесь», в котором вы храните очень распространенные расширения, используемые во всех проектах.
extension UIViewController {
///Add a UISwipeGestureRecognizer.
func addSwipe(_ d: UISwipeGestureRecognizer.Direction, _ s: Selector) {
let g = UISwipeGestureRecognizer(target: self, action: s)
g.direction = d
view.addGestureRecognizer(g)
}
///Add four swipes for left right up down.
func addSwipesLRUD(_ l: Selector, _ r: Selector, _ u: Selector, _ d: Selector) {
addSwipe(.left, l)
addSwipe(.right, r)
addSwipe(.up, u)
addSwipe(.down, d)
}
}
Просто более быстрый синтаксис ответа Нейта:
[UISwipeGestureRecognizerDirection.right,
UISwipeGestureRecognizerDirection.left,
UISwipeGestureRecognizerDirection.up,
UISwipeGestureRecognizerDirection.down].forEach({ direction in
let swipe = UISwipeGestureRecognizer(target: self, action: #selector(self.respondToSwipeGesture))
swipe.direction = direction
self.view.addGestureRecognizer(swipe)
})
Для Swift 5 обновлено
//Add in ViewDidLoad
let gesture = UISwipeGestureRecognizer(target: self, action: #selector(ViewController.handleSwipe))
gesture.direction = .right
self.view.addGestureRecognizer(gesture)
//Add New Method
@objc func handleSwipe(sender: UISwipeGestureRecognizer) {
print("swipe direction is",sender.direction)
}
Легко. Просто следуйте приведенному ниже коду и наслаждайтесь.
//SwipeGestureMethodUsing
func SwipeGestureMethodUsing ()
{
//AddSwipeGesture
[UISwipeGestureRecognizerDirection.right,
UISwipeGestureRecognizerDirection.left,
UISwipeGestureRecognizerDirection.up,
UISwipeGestureRecognizerDirection.down].forEach({ direction in
let swipe = UISwipeGestureRecognizer(target: self, action: #selector(self.respondToSwipeGesture))
swipe.direction = direction
window?.addGestureRecognizer(swipe)
})
}
//respondToSwipeGesture
func respondToSwipeGesture(gesture: UIGestureRecognizer) {
if let swipeGesture = gesture as? UISwipeGestureRecognizer
{
switch swipeGesture.direction
{
case UISwipeGestureRecognizerDirection.right:
print("Swiped right")
case UISwipeGestureRecognizerDirection.down:
print("Swiped down")
case UISwipeGestureRecognizerDirection.left:
print("Swiped left")
case UISwipeGestureRecognizerDirection.up:
print("Swiped up")
default:
break
}
}
}
Это можно сделать, просто объявив одну функцию, которая будет обрабатывать все ваши направления UISwipeGestureRecognizer. Вот мой код:
let swipeGestureRight = UISwipeGestureRecognizer(target: self, action:#selector(ViewController.respondToSwipeGesture(_:)) )
swipeGestureRight.direction = UISwipeGestureRecognizerDirection.right
self.view .addGestureRecognizer(swipeGestureRight)
let swipeGestureLeft = UISwipeGestureRecognizer(target: self, action: #selector(ViewController.respondToSwipeGesture(_:)))
swipeGestureLeft.direction = UISwipeGestureRecognizerDirection.left
self.view.addGestureRecognizer(swipeGestureLeft)
let swipeGestureUp = UISwipeGestureRecognizer(target: self, action: #selector(ViewController.respondToSwipeGesture(_:)))
swipeGestureUp.direction = UISwipeGestureRecognizerDirection.up
self.view.addGestureRecognizer(swipeGestureUp)
let swipeGestureDown = UISwipeGestureRecognizer(target: self, action: #selector(ViewController.respondToSwipeGesture(_:)))
swipeGestureDown.direction = UISwipeGestureRecognizerDirection.down
self.view.addGestureRecognizer(swipeGestureDown)
Вот функция, которая будет изменять функциональность swipedirection:
func respondToSwipeGesture(_ sender: UIGestureRecognizer) {
if let swipeGesture = sender as? UISwipeGestureRecognizer {
switch swipeGesture.direction {
case UISwipeGestureRecognizerDirection.right:
print("right swipe")
case UISwipeGestureRecognizerDirection.left:
print("leftSwipe")
case UISwipeGestureRecognizerDirection.up:
print("upSwipe")
case UISwipeGestureRecognizerDirection.down:
print("downSwipe")
default:
break
}
}
}
Просто так: (Swift 4.2.1)
UISwipeGestureRecognizer.Direction.init(
rawValue: UISwipeGestureRecognizer.Direction.left.rawValue |
UISwipeGestureRecognizer.Direction.right.rawValue |
UISwipeGestureRecognizer.Direction.up.rawValue |
UISwipeGestureRecognizer.Direction.down.rawValue
)
я нашел простой способ распознавания жестов с помощью swift 5 и xcode 13
let gestureLeft = UISwipeGestureRecognizer(target: self, action: #selector(onLeftGesture))
gestureLeft.direction = UISwipeGestureRecognizer.Direction.left
imageView.addGestureRecognizer(gestureLeft)
let gestureRight = UISwipeGestureRecognizer(target: self, action: #selector(onRightGesture))
gestureRight.direction = .right
imageView.addGestureRecognizer(gestureRight)
let gestureUp = UISwipeGestureRecognizer(target: self, action: #selector(onUpGesture))
gestureUp.direction = .up
imageView.addGestureRecognizer(gestureUp)
let gestureDown = UISwipeGestureRecognizer(target: self, action: #selector(onDownGesture))
gestureDown.direction = .down
imageView.addGestureRecognizer(gestureDown)
let gestureTapSingle = UITapGestureRecognizer(target: self, action: #selector(onSingleTapGesture))
gestureTapSingle.numberOfTapsRequired = 1
labelGesture.addGestureRecognizer(gestureTapSingle)
let gestureTapDouble = UITapGestureRecognizer(target: self, action: #selector(onDoubleTapGesture))
gestureTapDouble.numberOfTapsRequired = 2
labelGesture.addGestureRecognizer(gestureTapDouble)
gestureTapSingle.require(toFail: gestureTapDouble)
let gesturePressLong = UILongPressGestureRecognizer(target: self, action: #selector(onLongPressGesture))
gesturePressLong.minimumPressDuration = 0.5
labelGesture.addGestureRecognizer(gesturePressLong)
}
@objc func onLeftGesture(_ sender: UISwipeGestureRecognizer) {
print("Left")
}
@objc func onRightGesture(_ sender: UISwipeGestureRecognizer) {
print("Right")
}
@objc func onUpGesture(_ sender: UISwipeGestureRecognizer) {
print("Up")
}
@objc func onDownGesture(_ sender: UISwipeGestureRecognizer) {
print("Down")
}
@objc func onSingleTapGesture(_ sender: UITapGestureRecognizer) {
print("Single Tap")
}
@objc func onDoubleTapGesture(_ sender: UITapGestureRecognizer) {
print("Double Tap")
}
@objc func onLongPressGesture(_ sender: UILongPressGestureRecognizer) {
print("Long Press Gesture!!!")
}