Pull to refresh
Pull down; the list reloads after a brief simulated fetch.
var isRefreshing by remember { mutableStateOf(false) }
var generation by remember { mutableIntStateOf(0) }
LaunchedEffect(isRefreshing) {
if (isRefreshing) {
delay(1200)
generation++
isRefreshing = false
}
}
PullToRefreshBox(
isRefreshing = isRefreshing,
onRefresh = { isRefreshing = true }
) {
Column(
Modifier
.fillMaxWidth()
.height(200.dp)
.verticalScroll(rememberScrollState())
) {
repeat(6) { index ->
Text("Item $generation.$index", Modifier.padding(12.dp))
}
}
}