Виджет CarouselView
Виджет CarouselView показывает ряд карточек с прокруткой.
Детей передают через конструктор или
weighted
с весами ширины.
Прокрутка горизонтальная, элементы выстраиваются в ленту.
Синтаксис
CarouselView(
children: [
Card(child: SizedBox(width: 200, child: Center(child: Text('abcde')))),
Card(child: SizedBox(width: 200, child: Center(child: Text('12345')))),
],
)
Параметры
| Параметр | Описание |
|---|---|
children |
Виджеты в горизонтальной ленте. |
itemExtent |
Фиксированная ширина элемента, если задана. |
Методы
| Метод | Описание |
|---|---|
weighted |
Строит ленту с разным весом карточек. |
Пример
Давайте прокрутим две карточки:
import 'package:flutter/material.dart';
void main()
{
runApp(
MaterialApp(
home: Scaffold(
body: CarouselView(
children: [
Card(child: Center(child: Text('abcde'))),
Card(child: Center(child: Text('12345'))),
],
),
),
),
);
}
Карточки листаются горизонтально.
Пример
Давайте зададим itemExtent:
import 'package:flutter/material.dart';
void main()
{
runApp(
MaterialApp(
home: Scaffold(
body: CarouselView(
itemExtent: 160,
children: List.generate(
3,
(i) => Card(child: Center(child: Text('$i'))),
),
),
),
),
);
}
Каждый элемент ленты шириной 160 логических пикселей.