Powder_Snow_ 2022-12-27 15:26 采纳率: 78.9%
浏览 80
已结题

Android平台开发与应用

完成一个倒计时代码的编写方法名为initDate(),如果第一次登陆在WelcomeActivity显示倒计时功能,如果是第二次登录直接跳转到主界面MainActivity。

  • 写回答

6条回答 默认 最新

  • |__WhoAmI__| 2022-12-27 18:14
    关注

    可以使用 CountDownTimer 类来实现倒计时功能,代码如下所示:

    private void initDate() {
        SharedPreferences preferences = getSharedPreferences("login_info", MODE_PRIVATE);
        boolean isFirstLogin = preferences.getBoolean("is_first_login", true);
    
        if (isFirstLogin) {
            // 如果是第一次登录,显示倒计时
            new CountDownTimer(3000, 1000) {
                @Override
                public void onTick(long millisUntilFinished) {
                    // 每秒执⾏一次,更新倒计时
                    long seconds = millisUntilFinished / 1000;
                    textView.setText(String.format(Locale.getDefault(), "倒计时 %d 秒", seconds));
                }
    
                @Override
                public void onFinish() {
                    // 倒计时结束,跳转到 MainActivity
                    Intent intent = new Intent(WelcomeActivity.this, MainActivity.class);
                    startActivity(intent);
                    finish();
                }
            }.start();
    
            // 记录已经登录过
            preferences.edit().putBoolean("is_first_login", false).apply();
        } else {
            // 如果不是第一次登录,直接跳转到 MainActivity
            Intent intent = new Intent(WelcomeActivity.this, MainActivity.class);
            startActivity(intent);
            finish();
        }
    }
    

    在上面的代码中使用 SharedPreferences 来保存登录信息。如果是第一次登录,就启动倒计时并记录已经登录过;如果不是第一次登录,就直接跳转到 MainActivity。

    上面的代码假设 WelcomeActivity 中有一个 textView 用于显示倒计时。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(5条)

报告相同问题?

问题事件

  • 系统已结题 1月5日
  • 已采纳回答 12月28日
  • 创建了问题 12月27日