Android カウントダウン実装:簡単ステップでタイマー作成
Androidでのカウントダウンを実装するには、HandlerとRunnableを使用することが可能です。以下に簡単なサンプルコードを示します。
public class CountDownTimerActivity extends AppCompatActivity {
private TextView mTextViewCountdown;
private int mCountdown = 10;
private Handler mHandler;
private Runnable mRunnable;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_count_down_timer);
mTextViewCountdown = findViewById(R.id.textview_countdown);
mHandler = new Handler();
mRunnable = new Runnable() {
@Override
public void run() {
if (mCountdown > 0) {
mTextViewCountdown.setText(String.valueOf(mCountdown));
mCountdown--;
mHandler.postDelayed(this, 1000); // 每隔1秒执行一次
} else {
mTextViewCountdown.setText("倒计时结束");
}
}
};
mHandler.post(mRunnable);
}
@Override
protected void onPause() {
super.onPause();
mHandler.removeCallbacks(mRunnable);
}
}
上記の例では、まずレイアウトファイルでTextViewを定義してカウントダウンを表示し、その後にActivity内でHandlerとRunnableオブジェクトを作成しました。Runnable内では、1秒ごとにカウントダウンを更新し、TextViewを更新するロジックが実装されています。ActivityのonCreate()メソッドでHandlerのpost()メソッドを呼び出してカウントダウンを開始し、onPause()メソッドでRunnableを削除してカウントダウンを停止します。