🐥
Jetpack Compose 二度押しを避けるボタン
シンプルに実装できるはず。
ボタンをクリックすると3秒間無効化(グレーアウト)する。
@Composable
fun SingleButton(onClick: () -> Unit) {
val scope = rememberCoroutineScope()
var enabled by remember { mutableStateOf(true) }
Button(
onClick = {
onClick()
scope.launch {
enabled = false
delay(3000)
enabled = true
}
},
enabled = enabled
) {
Text("Click")
}
}
SingleButton() {
Timber.d("@@@ ${System.currentTimeMillis()}")
}
👉 【Jetpack Compose】 よくあるボタンの有効化/無効化
👉 【Jetpack Compose】 rememberCoroutineScope() vs LaunchedEffect
Discussion