Я перешел с Flutter на Kotlin из-за неуклюжей прокрутки в ListView Flutter, затем попробовал LazyColumn на Kotlin, и это было больше похоже на настоящее приложение для Android, хотя другие приложения для Android кажутся более неуклюжими или легкими при прокрутке, они прокручиваются дальше с меньшим количеством пролистывания, такие приложения, как WhatsApp, Discord, Chatgpt или Gemini — примеры этого.
В чем причина того, что они используют RecyclerView вместо LazyColumn? И если да, то есть ли способ заставить мой LazyColumn вести себя так же?
РЕДАКТИРОВАТЬ: LazyColumn не кажется тормозящим или неестественно медленным, я просто заметил тонкую разницу (для меня это не так) между ним и другими приложениями, упомянутыми выше. Я просто хочу знать, является ли причина в том, что они, вероятно, используют «Recycler View», или они настроили LazyColumn, чтобы он создавал ощущение «еще более плавного».
- Версия Jetpack Compose: 2024.09.00
Столбец {
LazyColumn(
modifier = Modifier
.background(Color(0xFFE91E63))
.weight(1f)
) {
items(100) { i ->
Box(
modifier = Modifier
.fillMaxWidth()
) {
Text(
"Это отправленное сообщение $i",
color = Color.Black,
modifier = Модификатор
.align(Alignment.CenterEnd)
.padding(4.dp)
.border(
shape = RoundedCornerShape(8.dp),
width = 1.dp,
color = Color.Black
)
.background(
Color.LightGray,
shape = RoundedCornerShape(8.dp)
)
.padding(8.dp)
)
}
Box(
modifier = Modifier
.fillMaxWidth()
) {
Text(
text = «Это полученное сообщение $i»,
color = Color.White,
modifier = Modifier
.align(Alignment.CenterStart)
.padding(4.dp)
.border(
shape = RoundedCornerShape(8.dp),
width = 1.dp,
color = Color.LightGray
)
.background(
Color.Black,
shape = RoundedCornerShape(8.dp),
)
.padding(8.dp)
)
}
}
}
Подробнее здесь: https://stackoverflow.com/questions/798 ... android-ap
Мобильная версия