检查用户是否未触摸屏幕

时间:2011-03-11 08:17:00

标签: iphone touch user-input

我必须检查用户是否触摸了屏幕。如果应用程序空闲了一段时间,则执行一些任务。
我知道如何使用TouchBegin和touchEnd方法,但我的项目很大,有些对象没有响应这些方法。

目前我在与对象的每次互动中使用计时器,我知道这是非常糟糕的方式,必须有一些好的方法来做到这一点......

有人能建议更好的解决方案吗?

3 个答案:

答案 0 :(得分:2)

记录上次TouchUp事件发生的时间。然后,您可以在不需要任何计时器的情况下进行检查。

答案 1 :(得分:1)

您希望在每个触摸结束事件中取消并重新启动一个全局计时器。

答案 2 :(得分:1)

为什么你说某些对象没有响应TouchBegin和touchEnd方法。没有这些方法你怎么能检测到用户是否触摸过。我不认为在这种情况下使用计时器是正确的方法。因此,让这些对象响应这些方法。

尝试制作一个bool变量,例如: - BOOL isTouched

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {

      isTouched =  Yes;
}

现在根据这个bool变量为你创造条件 祝你好运!