La aplicación CountDownTimer se trata de establecer un tiempo que se mueve en orden inverso, ya que muestra el tiempo restante en el próximo evento. Del mismo modo, aquí vamos a crear una aplicación de Android para aprender a crear una aplicación de cuenta regresiva simple . Entonces, comencemos la creación de la aplicación paso a paso hasta su finalización.
Acercarse
Paso 1: Crear un nuevo proyecto
Para crear un nuevo proyecto en Android Studio, consulte Cómo crear/iniciar un nuevo proyecto en Android Studio . Tenga en cuenta que seleccione Java como lenguaje de programación.
Paso 2: trabajar con el archivo activity_main.xml
En el archivo activity_main.xml agregue solo un TextView para mostrar el CountDownTimer. A continuación se muestra el código completo para el archivo activity_main.xml .
activity_main.xml
<?xml version="1.0" encoding="utf-8"?> <androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#fff" tools:context=".MainActivity"> <!-- Here adding a TextView to show countdown --> <TextView android:id="@+id/textView" android:layout_width="0dp" android:layout_height="0dp" android:background="?android:attr/detailsElementBackground" android:gravity="center_horizontal|center_vertical" android:text="TextView" android:textColor="@color/colorPrimary" android:textSize="36sp" android:textStyle="bold" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintHorizontal_bias="0.0" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" app:layout_constraintVertical_bias="0.0" /> </androidx.constraintlayout.widget.ConstraintLayout>
Paso 3: trabajar con el archivo MainActivity.java
Ahora en el archivo MainActivity.java , cree un objeto de TextView y asigne los componentes (TextView) con su id.
// Inicializando la vista de texto
vista de texto vista de texto;
textView = findViewById (R.id.textView);
50 segundos
nuevo temporizador de cuenta regresiva (50000, 1000) {
public void onTick(long millisUntilFinished) {
// Se usa para formatear el dígito para que sea solo de 2 dígitos
NumberFormat f = new DecimalFormat(“00”);
hora larga = (millisUntilFinished / 3600000) % 24;
min largo = (millisUntilFinished / 60000) % 60;
largo segundo = (millisUntilFinished / 1000) % 60;
textView.setText(f.format(hora) + “:” + f.format(min) + “:” + f.format(seg));
}
// Cuando la tarea termine, imprimirá 00:00:00 allí
public void onFinish() {
vistatexto.setText(“00:00:00”);
}
}.comienzo();
El código completo para el archivo MainActivity.java se proporciona a continuación.
MainActivity.java
package org.gfg.countdowntimer; import android.os.Bundle; import android.os.CountDownTimer; import android.widget.TextView; import androidx.appcompat.app.AppCompatActivity; import java.text.DecimalFormat; import java.text.NumberFormat; public class MainActivity extends AppCompatActivity { // Initializing my textView TextView textView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); textView = findViewById(R.id.textView); // Time is in millisecond so 50sec = 50000 I have used // countdown Interveal is 1sec = 1000 I have used new CountDownTimer(50000, 1000) { public void onTick(long millisUntilFinished) { // Used for formatting digit to be in 2 digits only NumberFormat f = new DecimalFormat("00"); long hour = (millisUntilFinished / 3600000) % 24; long min = (millisUntilFinished / 60000) % 60; long sec = (millisUntilFinished / 1000) % 60; textView.setText(f.format(hour) + ":" + f.format(min) + ":" + f.format(sec)); } // When the task is over it will print 00:00:00 there public void onFinish() { textView.setText("00:00:00"); } }.start(); } }
Salida: ejecutar en el emulador
Cuenta regresiva de pulsos
PulseCountDown Android porque el hermoso valor inicial PulseCountDown el valor final necesita una aplicación de prueba PulseCountDown implemente PulseCountDown , consulte PulseCountDown en Android con el ejemplo.
Publicación traducida automáticamente
Artículo escrito por kartiksrivastava6 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA