为什么检测触摸变得越来越慢?
问题描述:
在我的游戏中,如果我多次玩特定的游戏,我的触摸需要更多的时间来检测。 它存储所有触摸,然后同时应用这些触摸。为什么检测触摸变得越来越慢?
有人可以告诉我有什么问题吗?
在touchesBegan
我写道:
if (CGRectContainsPoint([tapView frame], [touch locationInView:self])
&& tapView.alpha == 1) {
[self callTapCode];
}
这是touchesEnded
的代码。如果我敲击并释放敲击,它会显示一个敲击事件。
- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event {
if (checkTap == TRUE && tapView.alpha == 1)
tap_effect_view.alpha = 0;
}
- (void)callTapCode {
// Move player code by 6 pixels
// not possible to write all code
}
在tapView
我连续点击。 callTapCode
将播放器移动六个像素。但过了一段时间,我的触觉发现非常缓慢,以至于玩家看起来像在跳跃。我连续玩了15到16次。
答
尝试寻找任何内存泄漏。也许iPhone必须使用很多虚拟内存。
答
我找到了解决我的问题的方法。在我的游戏中,我启用了tapView.multipleTouchEnabled = TRUE
tapView
是我不断点击的视图。
当我做到了FALSE
它的工作原理。
即
tapView.multipleTouchEnabled = FALSE;
我正好不知道如何。但它的工作。
感谢您的回复。
您是否有简化的代码示例来演示该问题的基本元素? – mmcdole 2009-02-19 09:33:28
在我的touchesBegan写 如果(CGRectContainsPoint([tapView帧],[触摸locationInView:自])&& tapView.alpha == 1) \t { \t \t [自callTapCode]; \t} 在tapView我不断点击。 callTapCode方法将用户播放器移动六个像素。但过了一段时间,我的触觉发现非常缓慢。 – Jyotsna 2009-02-19 09:41:47
所以玩家看起来跳跃。我连续玩了15到16次 – Jyotsna 2009-02-19 09:42:38