gpt4 book ai didi

objective-c - 有没有办法获得 UIView TouchBegan 更精确的计时数据?

转载 作者:行者123 更新时间:2023-11-29 04:17:39 25 4
gpt4 key购买 nike

我正在编写一个应用程序,在其中获得有关用户何时点击 UIView 的非常精确的数据会很有用。

传递给 touchesBegan:UIEvent 仅具有以秒为单位的计时数据,这不够精确。

因此,从逻辑上讲,下一步似乎是使用 mach_absolute_time() 或类似的方法记录调用 touchesBegan: 的时间。这种方法在大多数情况下效果很好,但如果系统正在做一些非常紧张的工作(尤其是在执行 UI 工作的主线程上),则看起来 touchesBegan 在循环中被推回了一点 - - 它仍然会开火,但已经晚了。

我希望可能有一个较低级别的解决方案,我可以在信号链中的某个点使用它来获取更精确的数据(至少是毫秒而不是秒的数量级)。

当然,我也会尝试让 UI 线程尽可能高效地运行,以避免这些延迟,但特别是在较旧的设备上,似乎这些时间上的小问题是不可避免的。

最佳答案

UIEvent 的时间戳是一个 NSTimeInterval,它是一种浮点类型,整数对应于整秒......但小数部分包括亚毫秒精度。您确定它对您来说不够精确吗?

关于objective-c - 有没有办法获得 UIView TouchBegan 更精确的计时数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13449208/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com