Что такое FlowRow

«Что такое FlowRow» — вопрос из категории Jetpack Compose, который задают на 24% собеседований Android Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

FlowRow — это композейбл в Jetpack Compose, который размещает дочерние элементы в строку, перенося их на следующую строку при нехватке места (аналог FlexboxLayout из XML).

Особенности:

  • Автоматический перенос элементов
  • Поддерживает горизонтальное выравнивание (horizontalArrangement)
  • Можно управлять расстоянием между элементами (verticalArrangement, horizontalArrangement)

Пример:

FlowRow(
    modifier = Modifier.fillMaxWidth(),
    horizontalArrangement = Arrangement.SpaceEvenly,
    verticalArrangement = Arrangement.Center
) {
    repeat(10) { index ->
        Chip(label = "Item $index", modifier = Modifier.padding(4.dp))
    }
}

Используется для динамических списков (теги, фильтры и т.д.).