【问题标题】:iOS touch eventiOS 触摸事件
【发布时间】:2011-05-16 08:42:20
【问题描述】:

只是好奇。当用户在 iPhone 应用程序中触摸屏幕时,操作系统如何处理触摸事件?当前代码块(函数/方法)是否完成,然后触摸事件得到处理?或者操作系统是否会中断正在运行的任何代码来处理触摸事件?

谢谢!

晴天

【问题讨论】:

    标签: iphone touch-event


    【解决方案1】:

    如果当前函数/方法在主线程中运行,那么在当前例程返回(到运行循环)之前不会调用任何触摸事件处理程序。如果当前函数/方法没有在主 UI 线程中运行,则可以中断代码以运行触摸事件处理程序。

    在当前设备上,触摸事件似乎被量化为 60 Hz 帧速率,大约每 16 毫秒一次,因此直到该时间过去之前,物理触摸可能不会作为事件发布,并且不会有任何处理程序在事件发布后调用。

    【讨论】:

      【解决方案2】:

      触摸屏幕会导致操作系统为您的应用生成触摸事件。所有事件都在主线程(运行代码的同一线程)中处理,该线程像循环一样实现。操作系统不会中断您的代码来处理事件;所有事件都会在事件循环的下一次处理中得到处理。

      【讨论】:

        猜你喜欢
        • 2021-10-27
        • 1970-01-01
        • 2015-02-06
        • 2013-04-16
        • 1970-01-01
        • 1970-01-01
        • 2012-10-12
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多