Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

381
Vistas
Cómo codificar un contador que se repite dentro de un intervalo en Kotlin Android

Estoy tratando de crear una vista de cuenta regresiva dentro de una aplicación de Android con Kotlin. El código que tengo actualmente bloquea la aplicación mientras se ejecuta.

PD: el timer enteros también debe modificarse más adelante en la aplicación.

 var timer: Int = 50 // Declared globally private fun timer(){ timer_text.text = timer.toString() // Text view in UI while (timer > 1){ Handler().postDelayed({ timer-- timer_text.text = timer.toString() // Update the Text view in UI }, 1000) } }

Logcat

 I/sandaru.projec: Thread[6,tid=11100,WaitingInMainSignalCatcherLoop,Thread*=0xb400007b3dcd9f50,peer=0x13280238,"Signal Catcher"]: reacting to signal 3 I/sandaru.projec: I/sandaru.projec: Wrote stack traces to tombstoned D/EGL_emulation: app_time_stats: avg=5.51ms min=1.98ms max=10.47ms count=60
over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Parece que hay un ANR, ya que está ejecutando el ciclo while en el subproceso principal, puede intentar con el código a continuación, al hacer esto se suspenderá en lugar de bloquear

 var timer: Int = 50 // Declared globally private suspend fun timer(){ withContext(Dispatchers.Main) { timer_text.text = timer.toString() // Text view in UI while (timer > 1){ timer-- timer_text.text = timer.toString() // Update the Text view in UI delay(1000) } } }

y necesita ejecutar el código desde dentro de una rutina, por ej. en la actividad/fragmento puedes ejecutar así

 lifecycleScope.launch { timer() }
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda