//1.触摸事件
//事件触摸开始
// UITouch对象是和手指相关的。表示和手指的个数相等。
override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) {
print("手指开始触摸")
/*
发生触摸事件后,系统会把事件加入UIApplication管理的队列中。并将事件分发处理,先发送给主窗口,主窗口会在视图的层次结构中找一个最适合的视图来处理事件。事件的传递是从父控件传递到子控件。
判断自己可否接受事件,如果可以判断触摸点是否在自己身上。如果触摸点也在自己身上。
从后向前遍历子控件,重复上述步骤。如果子控件也满足上面的条件接着寻找。否则自己处理
touch 事件默认的是向上抛出,但是只要重写了这些方法就相当于不执行默认,如果调用
super方法就是把事件交给任务链上一级处理,如果当前的view是控制器的 view,上一级就是控制器。
如果不是控制器上一级就是父视图。
视图结构的最顶级视图不能处理会交给window对象处理,处理不了会交给UIAppliacation对象。
再不行就被丢弃。
*/
}
//结束
override func touchesEnded(touches: Set<UITouch>, withEvent event: UIEvent?) {
print("手机结束")
}
//正在触摸
override func touchesMoved(touches: Set<UITouch>, withEvent event: UIEvent?) {
print("移动")
}
//取消了。
override func touchesCancelled(touches: Set<UITouch>?, withEvent event: UIEvent?) {
}