Виджет ListWheelScrollView
Виджет ListWheelScrollView принимает children или useDelegate. Параметр itemExtent задаёт высоту пункта.
Синтаксис
ListWheelScrollView(children: [Text('abcde')])
Параметры
| Параметр | Описание |
|---|---|
children |
Список пунктов барабана. |
itemExtent |
Высота одного пункта на барабане. |
controller |
ScrollController.
|
Методы
| Метод | Описание |
|---|---|
useDelegate |
ListWheelScrollView. Давайте разберём вызов на примерах.
|
Пример
Давайте покажем три пункта на барабане:
import 'package:flutter/material.dart';
void main()
{
runApp(
MaterialApp(
home: Scaffold(
body: ListWheelScrollView(
itemExtent: 48,
children: [
Center(child: Text('abcde')),
Center(child: Text('12345')),
Center(child: Text('abcde')),
],
),
),
);
}
На экране центральный пункт крупнее, края затемнены.
Пример
Давайте увеличим диаметр барабана:
import 'package:flutter/material.dart';
void main()
{
runApp(
MaterialApp(
home: Scaffold(
body: ListWheelScrollView(
diameterRatio: 2,
itemExtent: 40,
children: List.generate(8, (i) => Center(child: Text('12345'))),
),
),
),
);
}
На экране барабан выглядит более пологим.
Смотрите также
-
виджет
Scrollable,
который часто ставят рядом в прокручиваемых экранах -
метод
useDelegate,
который дополняет работу с прокруткой -
виджет
PrimaryScrollController,
который помогает собрать сложный список -
виджет
Scrollbar,
который задаёт поведение или данные прокрутки