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

Класс SliverGridDelegateWithMaxCrossAxisExtent

Класс SliverGridDelegateWithMaxCrossAxisExtent задаёт maxCrossAxisExtent. Flutter сам считает, сколько колонок влезет. Остальные поля похожи на SliverGridDelegateWithFixedCrossAxisCount.

Синтаксис

SliverGridDelegateWithMaxCrossAxisExtent(maxCrossAxisExtent: 120)

Параметры

Параметр Описание
maxCrossAxisExtent Предельная ширина ячейки. По ней считают число колонок.
mainAxisSpacing Промежуток между ячейками вдоль прокрутки.
crossAxisSpacing Промежуток между ячейками поперёк прокрутки.
childAspectRatio Отношение ширины ячейки к её высоте.

Пример

Давайте выведем сетку с узкими ячейками:

import 'package:flutter/material.dart'; void main() { runApp( MaterialApp( home: Scaffold( body: GridView( gridDelegate: SliverGridDelegateWithMaxCrossAxisExtent( maxCrossAxisExtent: 90, ), children: List.generate( 6, (i) => Center(child: Text('12345')), ), ), ), ), ); }

На экране колонок будет больше, чем при фиксированном crossAxisCount.

Пример

Давайте сделаем ячейки шире:

import 'package:flutter/material.dart'; void main() { runApp( MaterialApp( home: Scaffold( body: GridView( gridDelegate: SliverGridDelegateWithMaxCrossAxisExtent( maxCrossAxisExtent: 200, ), children: List.generate( 4, (i) => Center(child: Text('abcde')), ), ), ), ), ); }

На экране колонок станет меньше, каждая ячейка займёт больше места.

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

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