iOS 触摸与手势开发全解析
1. 触摸与手势处理基础
在处理触摸和手势时,当手势影响的范围超过被触摸的对象时,手势代码通常应放在相关的视图控制器类中。例如,用户触摸一行并指示删除所有行,该手势应由视图控制器中的代码处理。无论代码所属的类是什么,对触摸和手势的响应方式都是相同的。
1.1 四个触摸通知方法
系统使用四个方法来通知响应者有关触摸的信息:
1. touchesBegan(_, withEvent:) :当用户首次触摸屏幕时,系统会查找实现了此方法的响应者。以下是该方法的示例代码:
override func touchesBegan(touches: NSSet, withEvent event: UIEvent) {
let touch = touches.anyObject() as UITouch
let numTaps = touch.tapCount
let numTouches = event.allTouches().count
// Do something here
}
- touchesMoved(_, withEvent:) :当用户在屏幕上移动手指时,该方法会被多次调用。
- touchesEnded(_, withEvent:) :当用户的任何手指从屏幕上移开时调用。
- touc