Skip to content

Instantly share code, notes, and snippets.

@robertmryan
Created May 16, 2022 19:17
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save robertmryan/cb779de3aa770c8161b06088a07ef925 to your computer and use it in GitHub Desktop.
Save robertmryan/cb779de3aa770c8161b06088a07ef925 to your computer and use it in GitHub Desktop.
import UIKit
import os.log
private let logger = Logger(subsystem: "MyApp", category: "ViewController")
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
let longPress = UILongPressGestureRecognizer(target: self, action: #selector(handleLongPress(_:)))
view.addGestureRecognizer(longPress)
view.isUserInteractionEnabled = true
}
@objc func handleLongPress(_ gesture: UILongPressGestureRecognizer) {
let state = gesture.state
logger.debug("event: \(state)")
DispatchQueue.main.asyncAfter(deadline: .now() + 1) {
logger.debug("one second later: \(state)")
}
}
}
extension UIGestureRecognizer.State: CustomStringConvertible {
public var description: String {
switch self {
case .possible: return "possible"
case .began: return "began"
case .changed: return "changed"
case .ended: return "ended"
case .cancelled: return "cancelled"
case .failed: return "failed"
@unknown default: return "default"
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment