就像标题说的,我需要在点击后禁用按钮一段时间,这样它就不会是可点击的,当这段时间到期后再次启用按钮,这样它就可以是可点击的。
Button( onClick = {}, modifier = //maybe to add code here? ) { Text(text = "Click me") }
如果代码可以添加到修改器中就太好了,那就太好了!因为这样它就可以被重用,不仅用于Button,也用于其他组件。
w8rqjzmb1#
以下是使用delay实现此目的的一种方法:
delay
var enabled by remember { mutableStateOf(true) } LaunchedEffect(enabled) { if (enabled) return@LaunchedEffect else delay(1000L) enabled = true } Button( onClick = { enabled = false }, enabled = enabled ) { Text(text = "Click Me") }
bvhaajcl2#
val scope = rememberCoroutineScope() var clickEnabled by remember { mutableStateOf(true) } Button(modifier = Modifier.clickable(enabled = clickEnabled) { clickEnabled = false scope.launch { delay(1000) clickEnabled = true } })
2条答案
按热度按时间w8rqjzmb1#
以下是使用
delay
实现此目的的一种方法:bvhaajcl2#