Поделиться через


Xamarin.Forms ListView

ListView — это представление для представления списков данных, особенно длинных списков, требующих прокрутки.

Внимание

Представление CollectionView служит для вывода списков данных с различными спецификациями макета. Она направлена на обеспечение более гибкой и производительной альтернативы ListView. Дополнительные сведения см. в разделе Xamarin.Forms CollectionView.

Случаи использования

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

Элемент ListView управления не следует путать с элементом TableView управления. Элемент TableView управления лучше использовать всякий раз, когда у вас есть не привязанный список параметров или данных, так как он позволяет указывать предопределенные параметры в XAML. Например, приложение параметров iOS, которое имеет в основном предопределенный набор параметров, лучше подходит для использования, TableView чем a ListView.

Класс ListView не поддерживает определение элементов списка в XAML, необходимо использовать ItemsSource свойство или привязку данных для ItemTemplate определения элементов в списке.

Лучше ListView всего подходит для коллекций, состоящих из одного типа данных. Это требование обусловлено тем, что для каждой строки в списке можно использовать только один тип ячейки. Элемент TableView управления может поддерживать несколько типов ячеек, поэтому это лучший вариант при отображении нескольких типов данных.

Дополнительные сведения о привязке данных к экземпляру ListView см. в разделе "Источники данных ListView".

Компоненты

Элемент ListView управления имеет ряд компонентов, доступных для выполнения собственных функций каждой платформы. Эти компоненты определены в следующих разделах.

Верхние и нижние колонтитулы

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

Группы

Данные в объекте ListView можно сгруппировать для упрощения навигации. Группы обычно привязаны к данным. На следующем снимка экрана показан ListView сгруппированные данные:

Ячейки

Элементы данных в ячейках ListView называются ячейками. Каждая ячейка соответствует строке данных. Есть встроенные ячейки для выбора или вы можете определить собственную пользовательскую ячейку. Встроенные и пользовательские ячейки можно использовать или определять в XAML или коде.

  • Встроенные ячейки, такие как TextCell и ImageCell, соответствуют собственным элементам управления и особенно выполняются.
    • Отображается TextCell строка текста, необязательно с текстом сведений. Текст сведений отображается в виде второй строки в меньшем шрифте с цветом акцента.
    • Отображает ImageCell изображение с текстом. Отображается как изображение TextCell слева.
  • Пользовательские ячейки используются для представления сложных данных. Например, настраиваемую ячейку можно использовать для представления списка песен, включающих альбом и артиста.

На следующем снимка экрана показан элемент ListView ImageCell:

Дополнительные сведения о настройке ячеек см. в ListViewстатье "Настройка внешнего вида ячейки ListView".

Функция

Класс ListView поддерживает ряд стилей взаимодействия.

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

На следующем снимок экрана показан контекстные ListView действия:

Дополнительные сведения о функциях ListViewинтерактивности см. в разделе "Действия и взаимодействие с ListView".