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

Метод builder

Метод builder виджета ListView конструктор ListView.builder создаёт ListView, который не держит все пункты сразу. Функция itemBuilder получает контекст и индекс и возвращает виджет строки. Число пунктов задают в itemCount.

Синтаксис

ListView.builder( itemCount: 10, itemBuilder: (context, index) { return Text('abcde'); }, )

Параметры

Параметр Описание
itemBuilder Функция, которая строит пункт по индексу. Обязательный параметр.
itemCount Сколько всего пунктов. Если не задан, список бесконечный.
controller ScrollController для программной прокрутки.
physics Физика жеста. Принимает ScrollPhysics.

Пример

Давайте выведем десять одинаковых подписей:

import 'package:flutter/material.dart'; void main() { runApp( MaterialApp( home: Scaffold( body: ListView.builder( itemCount: 10, itemBuilder: (BuildContext context, int index) { return ListTile(title: Text('abcde')); }, ), ), ), ); }

На экране видны первые пункты, при прокрутке builder создаст следующие.

Пример

Давайте покажем номер пункта в тексте:

import 'package:flutter/material.dart'; void main() { runApp( MaterialApp( home: Scaffold( body: ListView.builder( itemCount: 5, itemBuilder: (BuildContext context, int index) { return ListTile(title: Text('12345 $index')); }, ), ), ), ); }

На экране у каждой строки свой индекс от 0 до 4.

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

  • метод separated,
    который вставляет разделитель между пунктами
  • виджет ListView,
    к которому относится builder
  • виджет builder у SliverList,
    который делает то же в CustomScrollView
  • виджет builder у GridView,
    который строит ячейки сетки по индексу
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить