dispatchPreprocessedEventFromEventQueue

先定位;hittest

* thread #1, queue = 'com.apple.main-thread', stop reason = breakpoint 2.1

* frame #0: 0x000000010574e565 XibGooo`-[XView hitTest:withEvent:](self=0x00007fddacd1b890, _cmd="hitTest:withEvent:", point=(x = 109, y = 135.5), event=0x000060000033df80) at XView.m:20

frame #1: 0x0000000109dffff7 UIKitCore`-[UIView(Geometry) _hitTest:withEvent:windowServerHitTestWindow:] + 87

frame #2: 0x0000000109dffed1 UIKitCore`__38-[UIView(Geometry) hitTest:withEvent:]_block_invoke + 121

frame #3: 0x00000001069f7c9c CoreFoundation`-[__NSArrayM enumerateObjectsWithOptions:usingBlock:] + 476

frame #4: 0x0000000109dffa80 UIKitCore`-[UIView(Geometry) hitTest:withEvent:] + 460

frame #5: 0x0000000109dffff7 UIKitCore`-[UIView(Geometry) _hitTest:withEvent:windowServerHitTestWindow:] + 87

frame #6: 0x0000000109dffed1 UIKitCore`__38-[UIView(Geometry) hitTest:withEvent:]_block_invoke + 121

frame #7: 0x00000001069f7c9c CoreFoundation`-[__NSArrayM enumerateObjectsWithOptions:usingBlock:] + 476

frame #8: 0x0000000109dffa80 UIKitCore`-[UIView(Geometry) hitTest:withEvent:] + 460

frame #9: 0x0000000109dffff7 UIKitCore`-[UIView(Geometry) _hitTest:withEvent:windowServerHitTestWindow:] + 87

frame #10: 0x0000000109983d44 UIKitCore`-[UIWindow _hitTestLocation:inScene:withWindowServerHitTestWindow:event:] + 194

frame #11: 0x0000000109983a79 UIKitCore`__70+[UIWindow _hitTestToPoint:forEvent:windowServerHitTestWindow:screen:]_block_invoke + 159

frame #12: 0x000000010998377b UIKitCore`+[UIWindow _topVisibleWindowPassingTest:] + 506

frame #13: 0x000000010998397c UIKitCore`+[UIWindow _hitTestToPoint:forEvent:windowServerHitTestWindow:screen:] + 245

frame #14: 0x0000000109983ede UIKitCore`-[UIWindow _targetWindowForPathIndex:atPoint:forEvent:windowServerHitTestWindow:onScreen:] + 200

frame #15: 0x0000000109a20c6a UIKitCore`__startNewUITouch + 658

frame #16: 0x0000000109a208ad UIKitCore`____updateTouchesWithDigitizerEventAndDetermineIfShouldSend_block_invoke.59 + 239

frame #17: 0x0000000109a2e739 UIKitCore`_UIEventHIDEnumerateChildren + 123

frame #18: 0x0000000109a1fe13 UIKitCore`__updateTouchesWithDigitizerEventAndDetermineIfShouldSend + 773

frame #19: 0x0000000109a24db0 UIKitCore`__dispatchPreprocessedEventFromEventQueue + 1013

frame #20: 0x0000000109a281cb UIKitCore`__handleEventQueueInternal + 5948

frame #21: 0x0000000106a34721 CoreFoundation`__CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17

在发送;window sendevent

* thread #1, queue = 'com.apple.main-thread', stop reason = breakpoint 1.1

* frame #0: 0x000000010574e4ed XibGooo`-[XView touchesBegan:withEvent:](self=0x00007fddacd1b890, _cmd="touchesBegan:withEvent:", touches=1 element, event=0x000060000033df80) at XView.m:15

frame #1: 0x0000000109970dff UIKitCore`-[UIWindow _sendTouchesForEvent:] + 2052

frame #2: 0x00000001099727a0 UIKitCore`-[UIWindow sendEvent:] + 4080

frame #3: 0x0000000109950394 UIKitCore`-[UIApplication sendEvent:] + 352

frame #4: 0x0000000109a255a9 UIKitCore`__dispatchPreprocessedEventFromEventQueue + 3054

frame #5: 0x0000000109a281cb UIKitCore`__handleEventQueueInternal + 5948

frame #6: 0x0000000106a34721 CoreFoundation`__CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17

后委托;next responder

iOS的事件派发的更多相关文章

  1. Java多线程开发系列之番外篇:事件派发线程---EventDispatchThread

    事件派发线程是java Swing开发中重要的知识点,在安卓app开发中,也是非常重要的一点.今天我们在多线程开发中,穿插进来这个线程.分别从线程的来由.原理和使用方法三个方面来学习事件派发线程. 一 ...

  2. wex5 实战 框架拓展之2 事件派发与data刷新

    一 前言 讲完公共data,相信大家对框架级的data组件级绑定有了更新的认识,接下来我们继续深入,以求研究明白wex5的框架能力. 在一个web项目中,其实有一个data, 是基础框架必须的data ...

  3. 使用lua实现一个简单的事件派发器

    设计一个简单的事件派发器,个人觉得最重要的一点就是如何保证事件派发过程中,添加或删除同类事件,不影响事件迭代顺序和结果,只要解决这一点,其它都好办. 为了使用pairs遍历函数,重写了pairs(lu ...

  4. IOS触摸事件和手势识别

    IOS触摸事件和手势识别 目录 概述 触摸事件 手势识别 概述 为了实现一些新的需求,我们常常需要给IOS添加触摸事件和手势识别 触摸事件 触摸事件的四种方法 -(void)touchesBegan: ...

  5. [置顶] Android源码分析-点击事件派发机制

    转载请注明出处:http://blog.csdn.net/singwhatiwanna/article/details/17339857 概述 一直想写篇关于Android事件派发机制的文章,却一直没 ...

  6. IOS——触摸事件 视图检测和事件传递

    iPhone上有非常流畅的用户触摸交互体验,能检测各种手势:点击,滑动,放大缩小,旋转.大多数情况都是用UI*GestureRecognizer这样的手势对象来关联手势事件和手势处理函数.也有时候,会 ...

  7. JS 事件派发器EventDispatcher

    在Java和AS中经常用到EventDispatcher,写了一个JS版本的. addListener :添加事件监听器 removeListener:移除事件监听器 dispatchEvent:派发 ...

  8. IOS 触摸事件分发机制详解

    欢迎大家前往云+社区,获取更多腾讯海量技术实践干货哦~ 作者:MelonTeam 前言 很多时候大家都不关心IOS触摸事件的分发机制的实现原理,当遇到以下几种情形的时候你很可能抓破头皮都找不到解决方案 ...

  9. Android Touch事件派发流程源码分析

    分native侧事件派发到java侧和Framework派发事件到UI,流程看源码即可,此处不赘叙, Native侧派发事件的干活类图如下:

随机推荐

  1. AKKA Inbox收件箱

    起因 得到ActorRef就可以给actor发送消息,但无法接收多回复,也不知道actor是否停止 Inbox收件箱出现就是解决这两个问题 示例 package akka.demo.actor imp ...

  2. 新博客 https://k8gege.org

    新博客 https://k8gege.org 于2019/12/3启用,忘了发 由于博客园长期被Google误报屏蔽,导致Firefox/Chrome等浏览器无法访问博客 发现将被Google误报的文 ...

  3. ps 简单使用 ----- 将图片静态图片制作成动图

    1. 准备好你需要静态图片  放到文件夹中 2.打开ps 软件    将右上角切换为   动感 3.观察下方时间轴   点击加号   将图片导入 按住shift  选择图片 4.切换为帧格式 选择循环 ...

  4. python之路——阅读目录

    阅读目录 希望大家多多交流,有错误的地方请随时指正,笔记记得可能有点杂 一.python入门 计算机基础 编程语言发展史和python安装  二.数据类型.字符编码.文件处理 python基础数据类型 ...

  5. C 编程环境搭建 Window 篇

    前言 - 简介 我们在写代码的过程中, 不可避免的重度依赖所处的开发环境. 本文重点带大家在 Window 搭建 C 简单控制台项目. 当作存档, 用于记录项目搭建各种重复操作.  在详细过程之前, ...

  6. linux - 用户配置文件

    用户配文件: 1用户信息文件 /etc/passwd   2 影子文件 /etc/shadow  3  组信息文件 /etc/group 4 组密码文件 /etc/gshadow 1 用户信息文件 / ...

  7. Maven distributionManagement 分发构件至远程仓库

    https://blog.csdn.net/qq827245563/article/details/82661583 maven发布到本地仓库,和私服https://blog.csdn.net/u01 ...

  8. 在Unity 5中优化SkinnedMeshRenderer

    过早优化是万恶之源”——Donald Knuth        不少开发者在前期开发过程中对算法等类似的开销都甚少关心,而是更倾向于尽可能简单的解决某个问题,后面必要时再进行优化.这能极大加速开发进度 ...

  9. Java的Stream流式操作

    前言 最近在实习,在公司看到前辈的一些代码,发现有很多值得我学习的地方,其中有一部分就是对集合使用Stream流式操作,觉得很优美且方便.所以学习一下Stream流,在这里记录一下. Stream是什 ...

  10. pyspider最佳实践

    pyspider是好东西,非常稳定,很久很久以前架了一个,心冷了一段时间,但人家尽忠职守地持续运行,一直在抓取东西. 结合chrome,抓取代码简直不要太好写,没想到,最头大的,还是它的调度.明明感觉 ...