【问题标题】:iPhone multitouch - Some touches dispatch touchesBegan: but not touchesMoved:iPhone 多点触控 - 一些触控分派 touchesBegan:但不是 touchesMoved:
【发布时间】:2011-02-14 17:06:48
【问题描述】:

我正在开发一个多点触控应用程序。预计一触就会移动,我需要跟踪它的位置。对于所有其他的触摸,我需要跟踪它们的开始和结束,但它们的移动不那么重要。

有时,当 3 个或更多触摸处于活动状态时,我的 UIView 不会收到 touchesMoved: 移动触摸的事件。这个问题是间歇性的,尝试几次后总是可以重现:

  • 用两根手指触摸屏幕。
  • 用另一根手指触摸屏幕,然后四处移动。
  • 移动的手指总是调度 touchesBegan: 和 touchesEnded:,但有时不调度任何 touchesMoved: 事件。

只要移动的触摸没有调度 touchesMoved: 事件,我可以强制它调度 touchesMoved: 如果我移动其他触摸之一。这似乎“强制”每次触摸都重新检查其位置,并且我成功收到了 touchesMoved: 事件。但是,这很笨拙。

这个错误在 iPhone 2G 和 3GS 型号上都可以重现。

我的问题是:如何确保我的移动触摸调度 touchesMoved: 事件?

有人对这个问题有任何经验吗?我花了几天时间寻找答案。我发现了一篇描述如何与 VBL 同步触摸事件的帖子:http://www.71squared.com/2009/04/maingameloop-changes/。但是,这并没有解决问题。

我真的不知道该怎么做。任何帮助表示赞赏!

【问题讨论】:

    标签: iphone objective-c ios multi-touch touchesmoved


    【解决方案1】:

    这是 iPhone OS 3 中的错误,已在 iOS 4 中修复。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-03-19
      • 1970-01-01
      相关资源
      最近更新 更多