gpt4 book ai didi

android-jetpack-compose - 如何重置可组合中记住的可变状态?

转载 作者:行者123 更新时间:2023-12-02 18:04:10 25 4
gpt4 key购买 nike

我用了这个example from here :

@Composable
private fun TimedLayout() {
var show by remember { mutableStateOf(true) }

LaunchedEffect(key1 = Unit){
delay(5000)
show = false
}
Column(modifier=Modifier.fillMaxSize()) {
Text("Box showing: $show")
if(show){
Box{
Text(text = "BlaBla" )
}
}
}
}

这在我的案例中第一次很好用。当我在 Text() 消失后立即再次调用 TimedLayout() 时,记住的 show 标志仍然是 false 并且没有显示任何文本。

如何使用新的 show as true 启动可组合项?否则我该如何解决?

最佳答案

问题在于 show 被缓存的范围。 TimedLayout() 上的下一次重组将在组合中强制执行新键,从而强制执行新值。

您需要将状态向上移动一级或在调用方站点中。

关于android-jetpack-compose - 如何重置可组合中记住的可变状态?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73688127/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com