Android定时器,带有两个按钮启动/中断和重置,分:秒
我想创建一个计时器,它只以=00:00的格式显示分和秒,还有两个按钮,一个用于启动和中断,另一个用于重置。我从以下教程开始: 然后我添加了第三个按钮。但是现在我不知道如何更改java文件。我想到了一个if/when循环,但不知道如何开始 以下是我的MainActivity.java:Android定时器,带有两个按钮启动/中断和重置,分:秒,android,timer,format,stopwatch,Android,Timer,Format,Stopwatch,我想创建一个计时器,它只以=00:00的格式显示分和秒,还有两个按钮,一个用于启动和中断,另一个用于重置。我从以下教程开始: 然后我添加了第三个按钮。但是现在我不知道如何更改java文件。我想到了一个if/when循环,但不知道如何开始 以下是我的MainActivity.java: public class MainActivity extends AppCompatActivity { /** Für die Stoppuhr generierte Variablen */
public class MainActivity extends AppCompatActivity {
/** Für die Stoppuhr generierte Variablen */
TextView textTimer;
Button startButton;
Button pauseButton;
Button resetButton;
long startTime = 0L;
Handler myHandler = new Handler();
long timeInMillies = 0L;
long timeSwap = 0L;
long finalTime = 0L;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
textTimer = (TextView) findViewById(R.id.textTimer);
startButton = (Button) findViewById(R.id.btnStart);
startButton.setOnClickListener(new View.OnClickListener() {
public void onClick(View view) {
startTime = SystemClock.uptimeMillis();
myHandler.postDelayed(updateTimerMethod, 0);
}
});
pauseButton = (Button) findViewById(R.id.btnPause);
pauseButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
timeSwap += timeInMillies;
myHandler.removeCallbacks(updateTimerMethod);
}
});
resetButton = (Button) findViewById(R.id.btnReset);
resetButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
finalTime = 0;
timeInMillies = 0L;
timeSwap = 0L;
textTimer.setText("00:00");
}
});
}
private Runnable updateTimerMethod = new Runnable() {
@Override
public void run() {
timeInMillies = SystemClock.uptimeMillis() - startTime;
finalTime = timeSwap + timeInMillies;
int seconds = (int) (finalTime / 1000);
int minutes = seconds / 60;
seconds = seconds % 60;
int milliseconds = (int) (finalTime % 1000);
textTimer.setText("" + minutes + ":" + String.format("%02d", seconds) + ":" + String.format("%03d", milliseconds));
myHandler.postDelayed(this, 0);
}
};
}
}
能否帮助我?启动/停止按钮是否工作,第三个按钮应该做什么?第三个按钮将做什么?到目前为止,我实现了三个按钮:1。启动计时器2。暂停计时器3。重置计时器我只是想看看它是如何工作的。但我最终想要的只是两个按钮:1。启动计时器(第一次单击)和暂停计时器(第二次单击)2。重置时间启动/停止按钮是否工作以及第三个按钮应该做什么?第三个按钮将做什么?到目前为止,我实现了三个按钮:1。启动计时器2。暂停计时器3。重置计时器我只是想看看它是如何工作的。但我最终想要的只是两个按钮:1。启动计时器(第一次单击)和暂停计时器(第二次单击)2。重置计时器