Kotlin 流 倒计时

Posted 安果移不动

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Kotlin 流 倒计时相关的知识,希望对你有一定的参考价值。

    fun countDownCoroutines(
        total: Int,
        onTick: (Int) -> Unit,
        onStart: (() -> Unit)? = null,
        onFinish: (() -> Unit)? = null,
    ): Job 
        return flow 
            for (i in total downTo 0) 
                emit(i)
                delay(1000)
            
        .flowOn(Dispatchers.Main).onStart  onStart?.invoke() .onCompletion  onFinish?.invoke() .onEach  onTick.invoke(it) .launchIn(viewModelScope)
    
countDownCoroutines(60, onTick =  second ->
                                        setCountDown(second)
                                    , onFinish = 
                                        setCountDown(0)
                                    )

onTick就是返回当前秒数

以上是关于Kotlin 流 倒计时的主要内容,如果未能解决你的问题,请参考以下文章

kotlin实现流读取

对比Java学Kotlin协程-异步流

对比Java学Kotlin协程-异步流

对比Java学Kotlin协程-异步流

对比Java学Kotlin协程-异步流

Kotlin控制流