我正在使用Jetpack Compose版本1.0.2(截至今天最新的稳定版)。
我有一个包含多个LazyRows的Column,其中包含一张图像和两个文本。 请看下面的结构(简化版)
问题在于具有
为了理解发生了什么,请查看此视频:视频链接 我该如何动态计算
我有一个包含多个LazyRows的Column,其中包含一张图像和两个文本。 请看下面的结构(简化版)
val topicList: List<Topics>
Column {
topicList.forEach { topic ->
val showList: List<Show> = topic.shows
Column {
Text(text = topic.title)
LazyRow {
items(showList) { show ->
Column {
Image()
Text(text = show.title)
Text(text = show.info)
}
}
}
Spacer(Modifier.height(32.dp))
}
}
}
问题在于具有
show.title
和show.info
的Text
组件可以是多行的,而且由于每个项目都是惰性加载的,直到它出现在屏幕上才计算高度。因此,下一行的y
位置会跳来跳去。为了理解发生了什么,请查看此视频:视频链接 我该如何动态计算
Spacer
的高度,以便它们不会跳动?我知道简单的解决方案就是给一个固定的高度,但有些文本只有一行,这将导致更大的间隙,所以我认为这并不是理想的解决方案。