本文主要是介绍iOS Runloop面试题(解释一下 手势识别 的过程?),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
解释一下 手势识别 的过程?
当上面的 _UIApplicationHandleEventQueue()识别了一个手势时,其首先会调用 Cancel 将当前的 touchesBegin/Move/End 系列回调打断。随后系统将对应的 UIGestureRecognizer 标记为待处理。
苹果注册了一个 Observer 监测 BeforeWaiting (Loop即将进入休眠) 事件,这个 Observer 的回调函数是 _UIGestureRecognizerUpdateObserver(),其内部会获取所有刚被标记为待处理的 GestureRecognizer,并执行GestureRecognizer 的回调。
当有 UIGestureRecognizer 的变化(创建/销毁/状态改变)时,这个回调都会进行相应处理。
这篇关于iOS Runloop面试题(解释一下 手势识别 的过程?)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!