Texto parpadeando en Android, con Kotlin más conciso

Necesito hacer que un text (actualmente en una TextView ) parpadee por unos segundos. Hay varias respuestas sobre cómo hacerlo en Java aquí , pero como Kotlin tiene algunas características de syntax / lenguaje que java no tiene, le pregunto cuál es la forma más concisa que encontró para hacer que el text parpadee en Android usando Kotlin.

Aunque pretendo hacer un parpadeo progresivo / suave, estoy abierto a enfoques que también causarían un parpadeo no uniforme.

Tenga en count que también estoy buscando un performance de código ligero.

¡Gracias por tus respuestas!

Para un poco de diversión, puedes definir una function de extensión:

 fun View.blink( times: Int = Animation.INFINITE, duration: Long = 50L, offset: Long = 20L, minAlpha: Float = 0.0f, maxAlpha: Float = 1.0f, repeatMode: Int = Animation.REVERSE ) { startAnimation(AlphaAnimation(minAlpha, maxAlpha).also { it.duration = duration it.startOffset = offset it.repeatMode = repeatMode it.repeatCount = times }) } 

Y úsalo así (usando el ejemplo en la pregunta que vinculó):

 myText.blink(3) // Blink 3 times yourText.blink() // Just keep blinking 

Obviamente, puede cambiar los parameters para adaptarlos a su caso de uso.

Para detener la animation si es necesario, llame a clearAnimation() en la vista parpadeante ( yourText para el ejemplo anterior).

  • El complemento de Kotlin falla Android Studio
  • Usar Kotlin en un module de biblioteca sin usarlo en el module de la aplicación
  • Cualquier mejora de código en agregar / replace fragment
  • kotlin-android null no se puede convertir a tipo no nulo kotlin.String
  • ¿Cómo hacer inferencia tipo Kotlin desde la reflexión KClass?
  • Parse 2D Array en Kotlin
  • Kotlin build no puede get classs creadas por SquidDatabase
  • Cómo acceder a una vista desde el layout especificado en headerLayout de NavigationView usando Kotlin en Android