Функция showSnackBarInfo()
запускается несколько раз в лямбде, когда вызывается метод startTimer
:
private var timer: CountDownTimer? = null
private val handler = Handler(Looper.getMainLooper())
private val timerAction = Runnable { showSnackBarInfo() }
var timerDuration = TimeUnit.SECONDS.toMillis(10)
fun showSnackBarInfo() {
Log.d("some", "showSnackBarInfo")
}
fun startTimer() {
handler.removeCallbacks(timerAction)
handler.postDelayed(timerAction, timerDuration)
}
fun cancelTimer() = handler.removeCallbacks(timerAction)