Есть ли способ добиться этого поведения Dimension.fillToConstraints без использования ConstraintLayout в Jetpack-compose?
Я занимаюсь сочинением. У меня простой дизайн, содержащий LazyColumn и TextField. Все, что я хочу сделать, это зафиксировать TextField внизу. Проблема в том, что составной объект не имеет статической высоты, он заполняет весь экран и делает
TextField
пропадать. Я исправил это с помощью composable и настройки
MessageList()
высота
Dimension.fillToConstraints
. Интересно, есть ли способ добиться этого, используя только
Column()
нет
ConstraintLayout
.
Column {
MessageList(list, state)
Footer(message) {
message = it
}
}
@Composable
fun MessageList(list : List<ChatItem>, state : LazyListState){
LazyColumn(state = state) {
.....
}
}
@Composable
fun Footer(message : String, onChange : (String) -> Unit){
TextField(value = message, onValueChange = onChange)
}
1 ответ
Вы можете использовать что-то вроде:
val itemsList = (0..60).toList()
Column {
LazyColumn(modifier = Modifier.weight(1f)){
items(itemsList) {
Text("Item is $it")
}
}
Row( verticalAlignment = Alignment.Bottom) {
Text(text = "Footer row")
}
}