滑动:UISwipeGestureRecognizer
direction
属性为滑动的方向,可选值有上下左右
func addGestureSwipe(){
let swipe = UISwipeGestureRecognizer(target: self, action: #selector(swipeListener))
swipe.direction = .left
self.view.addGestureRecognizer(swipe)
}
@objc func swipeListener(){
print("------> EXECUTE LEFT SWIPE.")
}
边缘滑动:UIScreenEdgePanGestureRecognizer
edge
属性表示响应哪个边缘的滑动,可选值有上下左右。例如为right
则表示从屏幕右边缘滑动
func addGestureEdge(){
let swipe = UIScreenEdgePanGestureRecognizer(target: self, action: #selector(edgeListener))
swipe.edges = .right
self.view.addGestureRecognizer(swipe)
}
@objc func edgeListener(){
print("-----> EXECUTE RIGHT EDGE SWIPE.")
}
点击:UITapGestureRecognizer
numberOfTouchesRequired
系设定需要多少根手指同时触摸才有响应;numberOfTapsRequired
系点击次数。require(toFail: tapDouble)
系设置多个点击事件下取消某单击事件的响应属性。
func addGestureTap(){
let doubleTap = UITapGestureRecognizer(target: self, action: #selector(taplistener))
doubleTap.numberOfTapsRequired = 2
doubleTap.numberOfTouchesRequired = 1
self.view.addGestureRecognizer(doubleTap)
}
@objc func taplistener(){
print("EXECUTE TAP CLICK.")
}
长按:UILongPressGestureRecognizer
minimumPressDuration
系最小按下时间
func addGestureLong(){
let long = UILongPressGestureRecognizer(target: self, action: #selector(longListener))
self.view.addGestureRecognizer(long)
}
@objc func longListener(){
print("------> EXCUTE LONG.")
}