Xamarin.Forms Listview

Download Sample 下載範例

ListView 是用來呈現數據清單的檢視,尤其是需要卷動的長清單。

重要

CollectionView 是使用不同版面配置規格呈現資料清單的檢視。 其目標是提供更具彈性且高效能的 ListView替代方案。 如需詳細資訊,請參閱 Xamarin.Forms CollectionView

使用案例

ListView您可以在任何顯示可捲動的數據清單的情況下使用控制項。 類別 ListView 支援內容動作和數據系結。

ListView控件不應該與 TableView 控件混淆。 TableView當您有選項或數據的非系結清單時,控件是較佳的選項,因為它允許在 XAML 中指定預先定義的選項。 例如,具有大部分預先定義選項集的 iOS 設定應用程式較適合使用 TableViewListView

類別 ListView 不支援在 XAML 中定義清單專案,您必須搭配 使用 ItemsSource 屬性或數據系結來 ItemTemplate 定義清單中的專案。

ListView最適合包含單一數據類型的集合。 此需求是因為清單中每個數據列只能使用一種類型的儲存格。 控制項 TableView 可以支援多個資料格類型,因此當您需要顯示多個數據類型時,這是較佳的選項。

如需將數據系結至 ListView 實例的詳細資訊,請參閱 ListView 數據源

元件

控制件 ListView 有許多元件可用來執行每個平臺的原生功能。 這些元件定義於下列各節中。

頁首和頁尾

頁首和頁尾元件會顯示在清單的開頭和結尾,與清單的數據分開。 頁首和頁尾可以系結至與 ListView 數據源不同的數據源。

群組

中的數據 ListView 可以分組,以方便流覽。 群組通常是數據系結。 下列螢幕快照顯示 ListView 具有群組資料的 :

儲存格

中的數據 ListView 項稱為單元格。 每個數據格都會對應至一列數據。 有內建單元格可供選擇,或者您可以定義自己的自定義單元格。 內建和自定義數據格都可以在 XAML 或程式碼中使用/定義。

  • 內建單元格,例如 TextCellImageCell,會對應至原生控件,而且特別高效能。
    • 會顯示 TextCell 文字字串,選擇性地顯示詳細數據文字。 詳細數據文字會轉譯為使用輔色的較小字型中的第二行。
    • 顯示 ImageCell 含有文字的影像。 TextCell顯示為左側影像的 。
  • 自定義儲存格 可用來呈現複雜的數據。 例如,自定義儲存格可用來呈現包含專輯和藝術家的歌曲清單。

下列螢幕快照顯示 ListView ImageCell 專案的 :

若要深入瞭解在 中 ListView自定義儲存格,請參閱 自定義 ListView 儲存格外觀

功能

類別 ListView 支援許多互動樣式。

  • 提取重新 整理可讓使用者提取 ListView 以重新整理內容。
  • 內容動作 可讓開發人員在個別清單專案上指定自定義動作。 例如,您可以在 iOS 上實作撥動對動作,或在 Android 上長時間點選動作。
  • 選取 專案可讓開發人員將功能附加至清單專案上的選取和取消選取事件。

下列螢幕快照顯示 ListView 具有內容動作的 :

若要深入瞭解 的互動功能 ListView,請參閱 Actions 和 Interactivity with ListView