Когда вы думаете об обтекании, вы обязательно скажете «корректировка». Что ж, правильно. Виджет Flutter Wrap фактически делает то же самое с примененными виджетами. В этой статье мы узнаем, как работает этот виджет, а также другие свойства, так что давайте приступим к нему.
Содержание
Структура проекта
Выполнение
Структура проекта
Допустим, у нас есть 3
Контейнер имеет круглую форму, имеет набивку и обернут.
Внутри виджета строки
Вот фрагмент
Row( children: [ buildContainer(context), buildContainer(context), buildContainer(context), ], ), ///Function Widget buildContainer(BuiltContext context) { return Container( padding: const EdgeInsets.all(5), decoration: BoxDecoration( color: Colors.blue, shape: BoxShape.circle, ), height: 90, width: 90, ),
Вот пользовательский интерфейс
Выполнение
Wrap делает переход для вашего следующего элемента пользовательского интерфейса
В продолжение…
Здесь, если я увеличим счетчик этой функции до 5 или, может быть, до 6, это приведет к
Теперь вы определенно поняли концепцию Wrap. Наверное…
Теперь, если я заменю «Row» на Wrap, тот же самый UI теперь будет выглядеть так:
Вот обновленный фрагмент
Wrap( children: [ buildContainer(context), buildContainer(context), buildContainer(context), buildContainer(context), buildContainer(context), ], ),
Использование Wrap автоматически настраивает указанные вами элементы пользовательского интерфейса.
Давайте посмотрим, что еще мы можем сделать с Wrap.
- Изучение свойств обертки
Чтобы применить пространство по горизонтали, по вертикали, мы используем
интервал (двойной)
runSpacing (двойной)
Чтобы выровнять все дочерние элементы, которые мы используем
выравнивание: WrapAlignment… yourChoice
Это интересно
Чтобы обтекание действовало как столбец (вертикально), ряд (горизонтально), нам нужно указать направление как
направление: Axis.vertical
направление: Axis.horizontal
Вот измененный интерфейс
Вот обновленный фрагмент
Wrap( spacing: 18, runSpacing: 10, alignment: WrapAlignment.spaceEvenly, direction: Axis.vertical, children: [ buildContainer(context), buildContainer(context), buildContainer(context), buildContainer(context), buildContainer(context), ], ),
Пора заканчивать эту статью. Надеюсь, это поможет вам!
- Вот отсылка с моего канала на YouTube
- Узнайте больше об обертывании
Вот и все!
Если этот краткий обзор был вам полезен, 👏.
Не стесняйтесь задавать свои вопросы здесь или Twitter. Я постараюсь ответить как можно скорее.