Ada beberapa cara untuk melakukannya;
1. Menggunakan Handler
Handler().postDelayed({
TODO("Do something")
}, 2000)
2. Menggunakan Timer
Timer().schedule(object : TimerTask() {
override fun run() {
TODO("Do something")
}
}, 2000)
// Shorter
Timer().schedule(timerTask {
TODO("Do something")
}, 2000)
// Shortest
Timer().schedule(2000) {
TODO("Do something")
}
3. Menggunakan Executors
Executors.newSingleThreadScheduledExecutor().schedule({
TODO("Do something")
}, 2, TimeUnit.SECONDS)
4. Menggunakan Coroutine
GlobalScope.launch {
delay(1000)
yourFn()
}
5. Menggunakan ViewModel Scope
myViewModel.viewModelScope.launch {
delay(2000)
// DoSomething()
}
Beres.