我必须检查用户是否触摸了屏幕。如果应用程序空闲了一段时间,则执行一些任务。
我知道如何使用TouchBegin和touchEnd方法,但我的项目很大,有些对象没有响应这些方法。
目前我在与对象的每次互动中使用计时器,我知道这是非常糟糕的方式,必须有一些好的方法来做到这一点......
有人能建议更好的解决方案吗?
答案 0 :(得分:2)
记录上次TouchUp事件发生的时间。然后,您可以在不需要任何计时器的情况下进行检查。
答案 1 :(得分:1)
您希望在每个触摸结束事件中取消并重新启动一个全局计时器。
答案 2 :(得分:1)
为什么你说某些对象没有响应TouchBegin和touchEnd方法。没有这些方法你怎么能检测到用户是否触摸过。我不认为在这种情况下使用计时器是正确的方法。因此,让这些对象响应这些方法。
尝试制作一个bool变量,例如: - BOOL isTouched
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
isTouched = Yes;
}
现在根据这个bool变量为你创造条件 祝你好运!