欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

【面试题】基础篇02

程序员文章站 2024-03-21 23:06:40
...

1.事件传递流程

1.用户触摸屏幕,系统将事件加入到UIApplication管理的一个任务队列中
2.UIApplication将处于任务队列最前端的事件向下分发到UIWindow
3.UIWIndow将事件向下分发到UIView
4.UIView先看自己是否能处理事件,如果他的触摸范围内,就继续寻找subView
5.遍历子控件,看某个subView能处理事件
6.如果都没有找到,那就是UIView来处理
7.如果UIView也处理不了,就不做任何处理

- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event
这个方法会找到最合适的view


- (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event{
这个方法是最后响应事件的方法
相关标签: 面试