我想每隔5秒调用一次ViewModel的函数,在Jetpack Compose中最好的方法是什么?
qyswt5oh1#
这取决于您希望这种行为何时开始和结束。只要您的可组合对象保留在组合中,此操作就会运行:
LaunchedEffect(Unit) { while(true) { vm.someMethod() delay(5000) } }
9bfwbjaz2#
LaunchedEffect(state.showCards) { Log.d("gameScreen", "launcheffect: state.showCards") if(state.showCards){ repeat(5){ Log.d("gameScreen", "count: ${it+1}") delay(1000) } viewModel.hideCards() } }
上面的代码是针对这样的情况,如果你想做一些事情对一些事件(按钮点击),并在5秒后触发一个函数做一些其他的倒计时
2条答案
按热度按时间qyswt5oh1#
这取决于您希望这种行为何时开始和结束。
只要您的可组合对象保留在组合中,此操作就会运行:
9bfwbjaz2#
上面的代码是针对这样的情况,如果你想做一些事情对一些事件(按钮点击),并在5秒后触发一个函数做一些其他的倒计时