Android可以使用計時器類(Timer)來實現APP的秒表功能。
首先,在Android的布局文件中添加一個TextView來顯示計時的結果,例如:
<TextView
android:id="@+id/timerTextView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="00:00:00"
android:textSize="24sp" />
然后,在Activity中獲取TextView的實例,并創建一個Timer對象:
TextView timerTextView = findViewById(R.id.timerTextView);
Timer timer = new Timer();
接下來,創建一個TimerTask對象,并重寫它的run()方法,在run()方法中更新計時器的顯示:
TimerTask timerTask = new TimerTask() {
int seconds = 0;
@Override
public void run() {
seconds++;
int minutes = seconds / 60;
int hours = minutes / 60;
int sec = seconds % 60;
int min = minutes % 60;
int hrs = hours % 24;
// 使用runOnUiThread()方法更新UI
runOnUiThread(new Runnable() {
@Override
public void run() {
timerTextView.setText(String.format("%02d:%02d:%02d", hrs, min, sec));
}
});
}
};
最后,在需要開始計時的地方調用timer.schedule()方法,傳入timerTask和計時器開始的延遲時間和間隔時間:
timer.schedule(timerTask, 0, 1000);
這樣,每隔1秒鐘,計時器的顯示就會更新一次,實現秒表功能。
需要注意的是,在Activity生命周期結束時,需要調用timer.cancel()方法停止計時器,避免內存泄漏:
@Override
protected void onDestroy() {
super.onDestroy();
timer.cancel();
}