android 当mutableStateOf更新时,不会发生重组

taor4pac  于 2023-01-24  发布在  Android
关注(0)|答案(1)|浏览(180)

我有基本的组合如下:

var timer by remember { mutableStateOf(0) }
        Column {
            Text(text = timer.toString())
            Button(onClick = { timer++ }) {
                Text(text = "Add")
            }
        }

单击按钮时,内部状态(即计时器)将增加1,并且由于它已在文本组件中使用,因此将发生重组。但如果我使用LazyColumn而不是Column,如下所示:

var timer by remember { mutableStateOf(0) }
        LazyColumn {
            item(contentType = "timer") {
                Text(text = timer.toString())
            }
            item {
                Button(onClick = { timer++ }) {
                    Text(text = "Add")
                }
            }
        }

未发生重新组合,由于状态已更改,我们是否不期望重新组合?

cngwdvgl

cngwdvgl1#

我不知道你说重组不发生是什么意思。文本正在更新,在两个和平的代码,你在问题

相关问题