如果我们为像 valstate = remember(it) { mutableStateOf(ItemState()) }这样的列表项创建状态,那么我们在滚动时会失去扩展状态。
如果我们在 LazyColumn 之前提升生成更高的状态,那么扩展状态将正确保存
val states = items.map { remember(it) { mutableStateOf(ItemState()) } }
LazyColumn(modifier = Modifier.fillMaxSize()) {....
Run Code Online (Sandbox Code Playgroud)
但是当我们展开一个项目时,点击按钮,转到详细信息屏幕,然后回到我们松开展开状态的项目。保存项目状态的最佳方法是什么?
val states = items.map { remember(it) { mutableStateOf(ItemState()) } }
LazyColumn(modifier = Modifier.fillMaxSize()) {....
Run Code Online (Sandbox Code Playgroud)