首先,在activity中定义一个CountDownTimer对象,并在onCreate()方法中启动倒计时:

public class MainActivity extends AppCompatActivity {
    private CountDownTimer countDownTimer;
    private TextView countdownTextView;
    private int dazeicisu;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        countdownTextView = findViewById(R.id.countdownTextView);

        // 启动10分钟倒计时
        countDownTimer = new CountDownTimer(10 * 60 * 1000, 1000) {
            @Override
            public void onTick(long millisUntilFinished) {
                // 更新倒计时显示
                long seconds = millisUntilFinished / 1000;
                countdownTextView.setText(String.format("%02d:%02d", seconds / 60, seconds % 60));
            }

            @Override
            public void onFinish() {
                // 倒计时结束,dazeicisu加1,重新开始倒计时
                dazeicisu++;
                if (dazeicisu <= 3) {
                    startCountdown();
                }
            }
        };
        startCountdown();
    }

    private void startCountdown() {
        countDownTimer.start();
    }

    @Override
    protected void onPause() {
        super.onPause();
        // 在activity暂停时取消倒计时
        countDownTimer.cancel();
    }

    @Override
    protected void onResume() {
        super.onResume();
        // 在activity恢复时重新启动倒计时
        startCountdown();
    }
}

在onPause()方法中取消倒计时,在onResume()方法中重新启动倒计时,以确保倒计时在切换activity时仍然进行。

注意,在倒计时结束时,需要判断dazeicisu是否达到最大值,如果没有,则重新启动倒计时。另外,dazeicisu的初始值应该为0。

在android studio中编写程序在activity打开时开始10分钟倒计时并显示倒计时倒计时在打开其他activity时仍然进行倒计时结束后名为dazeicisu且初始值为0的整形数据加1 并重新开始倒计时dazeicisu的最大值为3。

原文地址: https://www.cveoy.top/t/topic/bIqx 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录