两次按钮点击之间的时间

时间:2013-04-03 18:27:25

标签: java android button time

我有两个按钮,我想计算两次点击之间的时间。我知道怎么做一次:

 Long starttime = System.currentTimeMillis();
 Long endtime = System.currentTimeMillis();
 Long differenz = ((endtime-starttime) / 1000);

现在,我希望在第二次点击时,计数从零开始,直到单击第一个按钮。然后,测量第一次和第二次按钮点击之间的时间,依此类推。

也许这是一件非常简单的事情,但我不知道该怎么做......

编辑:好的,我试着说清楚:

我有按钮A和B.我希望用户交替按下按钮A和B.当用户点击按钮A时,我想要一个计时器来测量直到B被点击的时间。直到这里,一切都很清楚。 现在我想要点击B直到点击A到A之间的时间,总是在A和B之间交替。

点击B后我不知道该做什么,再次测量时间直到A.

2 个答案:

答案 0 :(得分:2)

班级成员

boolean mButtonAClicked;
boolean mButtonBClicked;

long mStartTime = 0;

单击按钮A时

if (mButtonAClicked)
{
    // button A is clicked again, stop application
}
else
{
    mButtonAClicked = true;
    mButtonBClicked = false;
    if (mStartTime != 0) // Button B was clicked
    {
         Long endtime = System.currentTimeMillis();
         Long differenz = ((endtime-starttime) / 1000);
         mStartTime = System.currentTimeMillis();
    }
}  

当按钮B被阻止时

if (mButtonBClicked)
{
    // button B is clicked again, stop application
}
else
{
    mButtonBClicked = true;
    mButtonAClicked = false;
    if (mStartTime != 0) // Button A was clicked
    {
         Long endtime = System.currentTimeMillis();
         Long differenz = ((endtime-starttime) / 1000);
         mStartTime = System.currentTimeMillis();
    }
}  

答案 1 :(得分:1)

创建一个字段以保持上次按下每个字段。

long aMillisPressed;
long bMillisPressed;

单击按钮A时:

aMillisPressed = System.currentTimeMillis();
long timeElapsedSinceBPressed = aMillisPressed - bMillisPressed;

点击B时:

bMillisPressed = System.currentTimeMillis();
long timeElapsedSinceAPressed = bMillisPressed - aMillisPressed;