Метод extent
Метод extent виджета SliverGrid конструктор SliverGrid.extent принимает maxCrossAxisExtent.
Синтаксис
SliverGrid.extent(maxCrossAxisExtent: 100, children: [Text('abcde')])
Параметры
| Параметр | Описание |
|---|---|
maxCrossAxisExtent |
Предел ширины ячейки. |
children |
Дочерние виджеты, строки секции. |
Пример
Давайте вызовем его в простом экране:
import 'package:flutter/material.dart';
void main()
{
runApp(
MaterialApp(
home: Scaffold(
body: CustomScrollView(
slivers: [
SliverGrid.extent(
maxCrossAxisExtent: 90,
children: List.generate(6, (i) => Center(child: Text('abcde'))),
),
],
),
),
);
}
На экране колонок столько, сколько помещается по ширине.
Пример
Давайте повторим вызов с другими числами:
import 'package:flutter/material.dart';
void main()
{
runApp(
MaterialApp(
home: Scaffold(
body: CustomScrollView(
slivers: [
SliverGrid.extent(
maxCrossAxisExtent: 120,
children: List.generate(4, (i) => Center(child: Text('12345'))),
),
],
),
),
);
}
На экране более широкие ячейки и меньше колонок.
Смотрите также
-
метод
count,
который часто ставят рядом в прокручиваемых экранах -
виджет
SliverToBoxAdapter,
который дополняет работу с прокруткой -
метод
builder,
который помогает собрать сложный список -
виджет
SliverPadding,
который задаёт поведение или данные прокрутки