Карусель
Виджет Carousel, часто называемый слайдером изображений, представляет собой популярный элемент дизайна, используемый для отображения последовательности изображений или контента в горизонтальном или иногда вертикальном формате. Основная цель слайдера карусели — продемонстрировать несколько фрагментов информации, таких как изображения, характеристики продукта, статьи новостей или отзывы, в ограниченном пространстве экрана.
Добавление виджета Carousel
Чтобы добавить виджет Carousel в приложение:
- Добавьте виджет Carousel из вкладки Layout Elements.
- По умолчанию добавляется четыре слайда, и в холсте отображается первый из них. В дереве виджетов он представлен как Carousel Page. Чтобы увидеть другой слайд в холсте, перейдите в Properties Panel > и установите Active Page в нужный слайд.
- Чтобы добавить новый слайд, перейдите в Properties Panel > Active Page > и нажмите + Add Page.
- Чтобы удалить любой слайд, выберите Carousel Page в дереве виджетов или области холста и нажмите клавишу Delete на клавиатуре.
- По умолчанию Carousel Page содержит виджет Image; однако вы можете настроить его в соответствии с вашими требованиями.
Настройка
Вы можете настроить внешний вид и поведение этого виджета с помощью различных свойств, доступных в панели свойств.
Изменение направления прокрутк и
По умолчанию в Carousel используется горизонтальная прокрутка для слайдов. Чтобы изменить направление прокрутки на вертикальное, перейдите в Properties Panel > Carousel Properties > и установите Axis в значение Vertical.
Запуск действия при смене слайда
Возможно, вы захотите запустить действие при свайпе слайда. Например, если в вашей карусели есть функция автопроигрывания, вы можете отслеживать события смены слайда, чтобы приостановить или возобновить автопроигрывание. Также можно разместить пользовательский индикатор под Carousel и синхронизировать его с текущим слайдом, чтобы предоставить пользователям четкую обратную связь о их позиции в карусели.
Чтобы запустить действие при смене страницы или слайда:
- Выберите виджет в дереве виджетов или области холста.
- Выберите Actions в панели свойств (правое меню) и нажмите + Add Action.
- Вы заметите, что Type of Action (он же callback) уже установлен в On Page Change. Это означает, что действия, добавленные здесь, будут вызываться при каждом свайпе слайда.
- Теперь вы можете добавить любое действие.
Вот пример, показывающий сообщение в snackbar при каждом свайпе слайда.
Установка начального индекса страницы
Возможно, вы захотите отобразить определенный слайд сразу после загрузки. Для этого перейдите в Properties Panel > Carousel Properties > и введите значение Initial Page Index. Обратите внимание, что индекс слайда начинается с 0. Таким образом, если вы хотите установить слайд 1, введите 0. Если слайд 2 — введите 1 и так далее.

Циклическая прокрутка содержимого карусели
По умолчанию содержимое карусели циклически повторяется. Чтобы отключить это поведение, перейдите в properties panel > Carousel Properties > и отключите Loop carousel contents.
Обертывание элементов в центральный виджет
Если вы хотите разместить все элементы в центральной позиции, перейдите в properties panel > Carousel Properties > и включите Wrap items in Center Widget.

Изменение Viewport и Shrink factor
Вы можете использовать Viewport Fraction для изменения размера одного элемента, то есть элемента в центре. Shrink Factor позволяет настроить размер других элементов, то есть тех, которые не в фокусе. Оба свойства принимают значения от 0 до 1, где 1 — полный размер, а 0.5 — половина от фактического размера.
Включение автопроигрывания
При включенном автопроигрывании карусель будет автоматически переходить с одного слайда на следующий через регулярные интервалы, определяемые следующими параметрами:
- Duration: Время (в миллисекундах), необходимое для перехода с текущего слайда на следующий.
- Delay: Время (в миллисекундах), в течение которого элемент остается в центре перед переходом к следующему.
Смена слайда по нажатию кнопки
Возможно, вы захотите разрешить пользователям менять слайд по нажатию кнопки (например, кнопки «следующий», «предыдущий» и «пропустить») в дополнение к свайпу. Для этого добавьте действие Control Carousel на событие Tap виджета Button.
Вот как это сделать:
- Сначала добавьте виджет Carousel.
- Добавьте кнопки для перехода к предыдущей и следующей страницам.
- Теперь выберите любую кнопку и определите действие Control Carousel.
Control Carousel [Action]
С помощью этого действия вы можете получить больший контроль над поведением прокрутки виджета Carousel. Например, вы можете позволить пользователям переходить к следующему или предыдущему слайду одним касанием кнопки.
Типы действий
Это типы действий, которые вы можете добавить для виджета Carousel.
- Previous: Прокрутка к предыдущему слайду.
- Next: Прокрутка к следующему слайду.
- First: Прокрутка к первому слайду.
- Last: Прокрутка к последнему слайду.
- Jump to: Прокрутка к конкретному слайду в виджете Carousel. Обратите внимание, что индекс слайда начинается с 0. Таким образом, если вы хотите перейти к слайду 1, введите 0. Если к слайду 2 — введите 1 и так далее.