¿Cómo crear un contador númerico animado? apuntes donde se creará un contador númerico con animación de su valor, ascendente o descendente con una duración personalizada, ideal para crear contadores de puntuación en un juego.
Función AnimateTextValue()
fun animateTextValue(initialValue: Int, finalValue: Int, textview: TextView) {
val valueAnimator = ValueAnimator.ofInt(initialValue, finalValue)
valueAnimator.duration = 750L
valueAnimator.interpolator = DecelerateInterpolator()
valueAnimator.addUpdateListener { valueAnimator ->
textview.text = valueAnimator.animatedValue
}
valueAnimator.start()
}
- initialValue: Valor inicial
- finalValue: Valor final
- textView: elemento TextView a animar
La velocidad está establecida a 750L, se podria obtener los valores por defecto de Android
valueAnimator.duration = resources.getInteger(android.R.integer.config_longAnimTime).toLong()
- config_longAnimTime
La duración (en milisegundos) de una animación larga. - config_mediumAnimTime
La duración (en milisegundos) de una animación de longitud media. - config_shortAnimTime
La duración (en milisegundos) de una animación corta.
Más referencias en R.integer
Su uso
Por ejemplo si se quiere animar el valor de 500 a 1500
animateTextValue(500,1500,tvScore)