📜  如何在Android中制作倒数计时器? - Java (1)

📅  最后修改于: 2023-12-03 14:52:39.436000             🧑  作者: Mango

如何在Android中制作倒数计时器

在Android中,可以使用Java编写一个倒数计时器。下面是一个简单的例子,展示了如何创建一个倒数计时器,并在UI中显示倒计时的时间。

1. 创建布局文件

创建一个布局文件 activity_main.xml,用于显示倒计时的时间。

<!-- activity_main.xml -->
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingLeft="16dp"
    android:paddingTop="16dp"
    android:paddingRight="16dp"
    android:paddingBottom="16dp"
    tools:context=".MainActivity">

    <TextView
        android:id="@+id/countdown_text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textSize="40sp"
        android:textColor="#000000"
        android:layout_centerInParent="true" />

</RelativeLayout>

2. 创建Java类

创建一个 CountdownTimerActivity.java 类,用于处理倒计时的逻辑。

import android.os.Bundle;
import android.os.CountDownTimer;
import android.widget.TextView;

import androidx.appcompat.app.AppCompatActivity;

public class CountdownTimerActivity extends AppCompatActivity {

    private TextView countdownTextView;
    private CountDownTimer countDownTimer;

    private static final long TOTAL_TIME = 60000; // 总倒计时时间,这里设置为60秒

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

        countdownTextView = findViewById(R.id.countdown_text);

        countDownTimer = new CountDownTimer(TOTAL_TIME, 1000) { // 每次倒计时间隔为1秒
            @Override
            public void onTick(long millisUntilFinished) {
                long secondsRemaining = millisUntilFinished / 1000; // 转换为秒数
                countdownTextView.setText(String.valueOf(secondsRemaining));
            }

            @Override
            public void onFinish() {
                countdownTextView.setText("倒计时结束");
            }
        };

        countDownTimer.start(); // 启动倒计时
    }

    @Override
    protected void onDestroy() {
        super.onDestroy();
        countDownTimer.cancel(); // 取消倒计时
    }
}

3. 配置清单文件

打开 AndroidManifest.xml 文件,并在 application 标签中添加以下代码:

<activity android:name=".CountdownTimerActivity">
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />

        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
</activity>

4. 运行应用

在 Android 设备或模拟器上运行应用程序,就可以看到一个简单的倒计时器,每秒钟减少一秒,直到计时完成。

以上就是创建一个简单的倒计时器的步骤。你可以根据需要自定义计时器的总时间和显示方式,添加更多的功能和样式。