我有两个按钮,我想计算两次点击之间的时间。我知道怎么做一次:
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.
答案 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;