Таймер выводит только последнее значение цикла. Kotlin

Хотел создать простую функцию для счётчика от 1 до 5 с интервалом в секунду, с выводом значения на экран. При запуске ничего не происходит, после пяти секунд выводит: 5.

fun counter(view: View) {
        for (i in 1..5) {
            textView2.text=i.toString()
            TimeUnit.SECONDS.sleep(1);
        }
    }

Попробовал реализовать так:

fun counter(view: View) {
        val textView2: TextView = findViewById(R.id.textView2)
        for (i in 1..5) {
            Handler().postDelayed({
                textView2.text = i.toString()
            },1000)
        }
}

Результат без изменений - через секунду выводит 5.


Ответы (0 шт):