Метод builder
Метод builder виджета SliverGrid конструктор SliverGrid.builder принимает gridDelegate и itemBuilder.
Синтаксис
SliverGrid.builder(
gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(crossAxisCount: 2),
itemBuilder: (c, i) => Text('abcde'),
)
Параметры
| Параметр | Описание |
|---|---|
itemBuilder |
Строит ячейку. |
gridDelegate |
Правила сетки. |
itemCount |
Число ячеек. |
Пример
Давайте вызовем его в простом экране:
import 'package:flutter/material.dart';
void main()
{
runApp(
MaterialApp(
home: Scaffold(
body: CustomScrollView(
slivers: [
SliverGrid.builder(
gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(crossAxisCount: 2),
itemCount: 10,
itemBuilder: (context, index) => Center(child: Text('abcde')),
),
],
),
),
);
}
На экране sliver сетка из десяти ячеек.
Пример
Давайте повторим вызов с другими числами:
import 'package:flutter/material.dart';
void main()
{
runApp(
MaterialApp(
home: Scaffold(
body: CustomScrollView(
slivers: [
SliverGrid.builder(
gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(crossAxisCount: 3),
itemCount: 9,
itemBuilder: (context, index) => Center(child: Text('12345')),
),
],
),
),
);
}
На экране девять ячеек в три колонки.
Смотрите также
-
виджет
SliverGrid,
который часто ставят рядом в прокручиваемых экранах -
метод
count,
который дополняет работу с прокруткой -
метод
list,
который помогает собрать сложный список -
метод
extent,
который задаёт поведение или данные прокрутки