Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
377 of 1024 menu
◀ ▶

Метод custom

Метод custom виджета GridView конструктор GridView.custom принимает children со слайверами, например SliverGrid.count.

Синтаксис

GridView.custom( children: [ SliverGrid.count(crossAxisCount: 2, children: [Text('abcde')]), ], )

Параметры

Параметр Описание
children Список слайверов сетки. Обязательный параметр.
controller ScrollController для прокрутки.

Пример

Давайте вызовем его в простом экране:

import 'package:flutter/material.dart'; void main() { runApp( MaterialApp( home: Scaffold( body: GridView.custom( children: [ SliverToBoxAdapter( child: Padding( padding: EdgeInsets.all(8), child: Text('abcde'), ), ), SliverGrid.count( crossAxisCount: 2, children: List.generate( 4, (i) => Center(child: Text('12345')), ), ), ], ), ), ), ); }

На экране сверху заголовок, ниже сетка из четырёх ячеек.

Пример

Давайте повторим вызов с другими числами:

import 'package:flutter/material.dart'; void main() { runApp( MaterialApp( home: Scaffold( body: GridView.custom( children: [ SliverGrid.count( crossAxisCount: 3, children: List.generate( 9, (i) => Card(child: Center(child: Text('abcde'))), ), ), ], ), ), ), ); }

На экране девять карточек в три колонки с прокруткой.

Смотрите также

  • метод builder,
    который часто ставят рядом в прокручиваемых экранах
  • класс SliverGridDelegateWithFixedCrossAxisCount,
    который дополняет работу с прокруткой
  • метод extent,
    который помогает собрать сложный список
  • класс SliverGridDelegateWithMaxCrossAxisExtent,
    который задаёт поведение или данные прокрутки
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить