La aplicación CountDownTimer se trata de configurar un tiempo que se mueve en orden inverso, ya que muestra el tiempo restante en el próximo evento. Un CountDownTimer es un temporizador preciso que se puede usar para que un sitio web o blog muestre la cuenta regresiva de cualquier evento especial, como un cumpleaños o un aniversario. 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.
Implementación paso a paso
Paso 1: crear un nuevo proyecto
Para crear un nuevo proyecto en Android Studio, consulte Crear un nuevo proyecto en Android Studio en kotlin.
Paso 2: trabajar con el archivo activity_main.xml
Vaya a la aplicación > res > diseño > actividad_principal.xml y agregue el siguiente código a ese archivo. A continuación se muestra el código para el archivo activity_main.xml.
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" tools:context=".MainActivity"> <TextView android:id="@+id/gfg" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="GeeksforGeeks" android:textColor="#189C1E" android:textSize="22sp" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintHorizontal_bias="0.498" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintRight_toRightOf="parent" app:layout_constraintTop_toTopOf="parent" app:layout_constraintVertical_bias="0.134" /> <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="#189C1E" 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_toBottomOf="@+id/gfg" app:layout_constraintVertical_bias="0.0" /> </androidx.constraintlayout.widget.ConstraintLayout>
Paso 3: trabajar con el archivo MainActivity.kt
Vaya al archivo MainActivity.kt y consulte el siguiente código. A continuación se muestra el código del archivo MainActivity.kt . Se agregan comentarios dentro del código para comprender el código con más detalle.
Kotlin
package com.ayush.myapplication import androidx.appcompat.app.AppCompatActivity import android.os.Bundle import android.os.CountDownTimer import android.widget.TextView class MainActivity : AppCompatActivity() { lateinit var textView : TextView override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) textView = findViewById(R.id.textView) // time count down for 30 seconds, // with 1 second as countDown interval object : CountDownTimer(30000, 1000) { // Callback function, fired on regular interval override fun onTick(millisUntilFinished: Long) { textView.setText("seconds remaining: " + millisUntilFinished / 1000) } // Callback function, fired // when the time is up override fun onFinish() { textView.setText("done!") } }.start() } }
Las llamadas a onTick(long) se sincronizan con este objeto para que nunca se produzca una llamada a onTick(long) antes de que se complete la devolución de llamada anterior. Entonces, nuestra aplicación está lista. Y podemos ver la salida.
Producción:
Publicación traducida automáticamente
Artículo escrito por ayushpandey3july y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA