Строим списки во Flutter. Конструктор ListView | OTUS

Строим списки во Flutter. Конструктор ListView

Во Flutter существует виджет-класс ListView, позволяющий создавать как конечные, так и бесконечные списки виджетов, а также делать их прокручиваемыми, когда они не помещаются на дисплее либо в отведенной области. Давайте рассмотрим, как их создавать.

Говоря о бесконечном списке, мы понимаем перечень элементов, пополняемых по мере необходимости. В мобильных приложениях это встречается повсеместно: в новостных лентах, фотогалереях, списках сообщений и т. п.

Сам по себе класс ListView имеет несколько конструкторов. Рассмотрим два из них.

Создаем простой список

Конструктор ListView() позволяет создавать простой список текстовых элементов с применением виджет-класса ListView. По дефолту вышеупомянутый конструктор создает в параметре children список из заданных элементов.

1-1801-0e62a7.png

1540d430bbb590282fde3c06d535dc46_1-1801-060b48.png

Что имеем:

  • new Text('') – для создания текстового виджета;
  • new Divider() – виджет-разделитель, который отображается в виде горизонтальной либо вертикальной полосы (это зависит от направления расположения виджетов).

Создаем бесконечный список

В данном случае используется конструктор ListView.builder() выводящий элементы списка по требованию. С его помощью в параметре itemBuilder вызывается функция, обеспечивающая создание новых элементов перечня при прокрутке. Таким образом удается создавать бесконечные списки виджетов.

3-1801-e42227.png

d36e1c89fa94a78ac9efc172e72918e1_1-1801-e95a52.png

Подробности следующие:

  • itemBuilder – представляет собой обязательный параметр для конструктора ListView.builder(), принимающий в качестве значения функцию, которая отвечает за возвращение виджет-элемента;
  • index – это переменная типа int. Она принимает значение в диапазоне от 0 до N, причем N – это натуральное число;
  • return new Text('строка $index') – служит для возвращения текстового виджета со значением index.

Остается добавить, что вызов функции в itemBuilder происходит каждый раз с новым значением index , причем в том случае, когда надо заполнить экран либо область, которую занимает ListView.

По материалам https://flutter.su/.

Не пропустите новые полезные статьи!

Спасибо за подписку!

Мы отправили вам письмо для подтверждения вашего email.
С уважением, OTUS!

Автор
0 комментариев
Для комментирования необходимо авторизоваться
Популярное
Сегодня тут пусто