我正在开发一款名为 RealBaseball 的 iPhone 应用程序。如果您熟悉 RealSoccer,它非常相似。它可以让你用你的 iPhone 和世界各地的朋友一起打棒球。
当你用导电棒敲击 iPhone 屏幕时,它应该首先检测到触摸事件,然后检测加速度,这样它就可以准确地知道你什么时候敲击它,以及敲击的力度和速度。
这是我遇到一些技术困难的地方。我有标准touchesBegan
和didAccelerate
听众。问题是,didAccelerate
在射击之前touchesBegan
。显然,有些事情是错误的,因为它不应该在球棒接触它之前开始加速。我可能缺少设置代码吗?
我需要解决这个问题,因为如果时机不对,另一端的击球机就会滞后,而且不会有任何乐趣。
您可以提供的任何建议将不胜感激。
编辑:我添加了一些格式化的 NSLog 调用[[NSDate date] timeIntervalSince1970];
这是输出:
didAccelerate: 1364850400.03221
touchesBegan: 1364850400.21486
所以你可以看到这是一个很小但很明显的区别。