android 小应用之 倒计时的简单实现方法

1.CountDownTimer

该控件直接new就可以,可以使用EditText或者Button来显示

1.声明控件类型
 		private CountDownTimer timer;
 2. 具体实例化
        time_btn = findViewById(R.id.time_btn);

        timer = new CountDownTimer(60000, 1000) {
            @Override
            public void onTick(long millisUntilFinished) {
                time_btn.setText(formatTime(millisUntilFinished));
            }

            @Override
            public void onFinish() {
                time_btn.setEnabled(true);
                time_btn.setText("00:00");
            }
        };

        time_btn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                timer.start();
            }
        });
        //显示格式化
    public String formatTime(long millisecond) {
        int minute;//分钟
        int second;//秒数
        minute = (int) ((millisecond / 1000) / 60);
        second = (int) ((millisecond / 1000) % 60);
        if (minute < 10) {
            if (second < 10) {
                return "0" + minute + ":" + "0" + second;
            } else {
                return "0" + minute + ":" + second;
            }
        } else {
            if (second < 10) {
                return minute + ":" + "0" + second;
            } else {
                return minute + ":" + second;
            }
        }

2.Chronometer

本身是一个计时器,因此自带的开始停止都很方便使用,设计倒计时,只需要将基准值设置为相应的倒计时时长即可,即当前值+设置的时长。默认显示可能带负号,在UI上直接设置countdown属性为true即可

//默认25分钟倒计时
private long set_time=1500000;
private Chronometer countDown;

coutDown=findViewbyID(R.id.countDown);
countDown.setBase(SystemClock.elapsedRealtime()+set_time);

你可能感兴趣的:(andorid)