Использование ListView в Xamarin
ListView — это представление списков данных, особенно длинных списков, требующих прокрутки.
Представление CollectionView служит для вывода списков данных с различными спецификациями макета. Она направлена на обеспечение более гибкой и исполнительной альтернативы ListView. Дополнительные сведения см. в разделе Xamarin.Forms CollectionView.
Listview Xamarin: варианты использования
Элемент ListView управления можно использовать в любой ситуации, когда отображаются прокручиваемые списки данных. Класс ListView поддерживает контекстные действия и привязку данных.
Элемент ListView управления не следует путать с элементом TableView управления. Элемент TableView управления является лучшим вариантом всякий раз, когда у вас есть не привязанный список параметров или данных, так как он позволяет указывать предопределенные параметры в XAML. Например, приложение параметров iOS, которое имеет в основном предопределенный набор параметров, лучше подходит для использования, TableView чем a istView.
Класс ListView не поддерживает определение элементов списка в XAML, необходимо использовать ItemsSource свойство или привязку данных для ItemTemplate определения элементов в списке.
Лучше ListView всего подходит для коллекций, состоящих из одного типа данных. Это требование обусловлено тем, что для каждой строки в списке может использоваться только один тип ячейки. Элемент TableView управления может поддерживать несколько типов ячеек, поэтому он лучше подходит для отображения нескольких типов данных.
Компоненты ListView
Элемент ListView управления имеет ряд компонентов, доступных для реализации собственных функциональных возможностей каждой платформы. Эти компоненты определены в следующих разделах.
Верхние и нижние колонтитулы
Компоненты верхнего и нижнего колонтитулов отображаются в начале и конце списка, отдельно от данных списка. Верхние и нижние колонтитулы могут быть привязаны к отдельному источнику данных из источника данных ListView.
Группы
Данные в элементе управления ListView можно сгруппировать для упрощения навигации. Группы обычно привязаны к данным. На следующем снимка экрана показан ListView сгруппированные данные:
Ячейки
Элементы данных в ячейках ListView называются ячейками. Каждая ячейка соответствует строке данных. Есть встроенные ячейки для выбора или вы можете определить собственную пользовательскую ячейку. Встроенные и пользовательские ячейки можно использовать или определять в XAML или коде.
- Встроенные ячейки, такие как TextCell и ImageCell, соответствуют собственным элементам управления и особенно выполняются.
- Отображает TextCell строку текста(необязательно) с подробным текстом. Текст детализации отображается как вторая строка в меньшем шрифте с цветом акцента.
- Отображает ImageCell изображение с текстом. Отображается как TextCell изображение слева.
- Пользовательские ячейки используются для представления сложных данных. Например, пользовательскую ячейку можно использовать для представления списка песен, включающих альбом и артиста.
На следующем снимка экрана показан элемент ListView ImageCell:
Функциональное назначение
Класс ListView поддерживает ряд стилей взаимодействия.
- При обновлении по запросу ListView пользователь сможет обновить содержимое.
- Контекстные действия позволяют разработчику указывать пользовательские действия для отдельных элементов списка. Например, вы можете реализовать действия прокрутки к действию в iOS или действия с длинным касанием в Android.
- Выбор позволяет разработчику присоединять функциональные возможности к событиям выбора и отмены выбора элементов списка.
На следующем снимка экрана показан контекстные ListView действия.