2011-11-10 49 views
4

我有一个活动,我有一个线程在活动开始时运行。该线程调用一个方法叫做getTimeOfLastEvent,如何获得屏幕上最后一次触摸的时间?

public long getTimeOfLastEvent(){ 
return 0; 
} 

我想这个方法返回我的例子毫秒从当一个事件发生在这个时刻(当方法被调用的时刻)的时间。与'事件'一词我指的是在屏幕上的任何触摸。例如,如果用户触摸屏幕,然后离开手机4秒,并在那一刻getTimeOfLastEvent被称为我希望这种方法返回我4秒(可能以毫秒为单位)

如果我离开手机10秒后关闭屏幕,但如果我在10秒钟之前触摸屏幕,则重置定时器,并且我又重新开始10秒...,我的问题是我不知道如何阅读此计时器。

+0

使用OnTouch听众做'返回System.currentTime();' –

回答

0
static long timeLastEvent ;//initialize with appropriate value 


public long getTimeOfLastEvent() 
{ 
long duratin = System.currentTimeMillis() - timeLastEvent ; 
timeLastEvent = System.currentTimeMillis(); 
return duration ; 
} 
+1

用户可以按下home键做一些事情,回到我的活动,我不需要控制只是为了我的活动.. 。我需要系统的价值,如果屏幕将被关闭,其价值决定 – Lukap

+0

这种方法适用于我......但我不知道该把它叫到哪里。我需要每60秒启动一次viewflipper。 – Gabrielle

+0

这并没有解决最后一次触碰何时发生的问题。 –

相关问题