Carousel
Carousel — слайдер: показывает серию слайдов по одному, листая их вбок или вверх-вниз. Так в ограниченное место на экране помещают несколько картинок, преимуществ товара, шагов онбординга, новостей или отзывов.
Как добавить
- Перетащите Carousel из вкладки Layout Elements в Widget Palette.
- Поле Active Page в панели свойств выбирает слайд, который сейчас виден на холсте и редактируется.
- Кнопка + Add Page добавляет слайд. Лишний удаляется так: выделите его Carousel Page в дереве виджетов и нажмите Delete.
- Внутри слайда по умолчанию лежит Image — замените его или добавьте рядом другие виджеты.
На слайде помещается целое дерево виджетов, а не одна картинка. Текст, кнопки и изображения вместе — это уже шаг онбординга или карточка с подборкой.
Настройки
Выделите Carousel — настройки собраны в панели свойств:
- Axis — в какую сторону листаются слайды: по горизонтали или по вертикали.
- Initial Page Index — слайд, который показывается при загрузке. Нумерация с нуля: первому слайду соответствует
0, второму1и так далее. - Loop Carousel Contents — листать по кругу, с последнего слайда обратно на первый.
- Wrap Items in Center Widget — ставить содержимое слайда по центру.
- Viewport Fraction — сколько места на экране занимает активный слайд. Значение от
0до1. - Shrink Factor — насколько уменьшены соседние слайды. Тоже от
0до1:1— полный размер,0.5— половина. Так делают карусель, где по краям видны края соседних карточек. - Autoplay — слайды сменяются сами. Если автопрокрутка должна с последнего слайда переходить на первый, включите ещё и Loop Carousel Contents.
- Duration — сколько миллисекунд длится переход к следующему слайду.
- Delay — сколько миллисекунд слайд стоит на месте, прежде чем начнётся переход.
Динамические слайды
Слайды можно собрать из списка — например, из записей, которые вернул запрос к бэкенду. Выделите Carousel, откройте вкладку Generate Dynamic Children и выберите список. Дальше настройте виджеты на слайде и привяжите их значения к текущему элементу списка.
FlutterFlow повторит слайд для каждого элемента. Так делают галереи товаров, промо-блоки и отзывы — всё, где число элементов заранее неизвестно.
Действие при смене слайда
Триггер On Page Change срабатывает при каждой смене слайда. Через него обновляют собственный индикатор точек, сохраняют номер текущего слайда или показывают сообщение.
Выделите Carousel, откройте вкладку Actions в панели свойств, выберите On Page Change и добавьте нужное действие.
Чтобы взять номер показанного слайда в действии или виджете, выберите Set from Variable > Widget State > [имя карусели] > Carousel Current Index.
Действие Control Carousel
Действие Control Carousel даёт листать слайды кнопкой, значком или другим виджетом — а не только смахиванием.
- Выделите кнопку или значок, который будет управлять каруселью.
- Добавьте действие на подходящий триггер, например On Tap, и выберите Control Carousel.
- Укажите нужную карусель и выберите вид действия.
Виды действия
- Previous — предыдущий слайд.
- Next — следующий.
- First — первый.
- Last — последний.
- Jump To — конкретный слайд по номеру, нумерация с нуля.