Kotlin 中的 Android ListView 示例


簡介

Android 中的 ListView 具有 adapterView 屬性。此檢視將顯示一個垂直的可滾動檢視列表,這些檢視彼此疊加。藉助介面卡,可以將陣列或資料庫中的專案匯入列表。setAdaptor() 函式用於顯示列表的內容,並將列表和介面卡組合在一起以建立列表。

ViewGroup 是 ListView 的元件,用於在 Android 應用程式中顯示物件列表。它提供了一個介面卡,允許動態地向列表中新增專案。介面卡的主要職責是從資料庫或陣列中獲取資料,並將每個專案新增到列表中。最重要的資料來源是 strings.xml 檔案,其中包含用 Java 或 XML 編寫的檔案中所有必要的字串。

Android ListView

檢視組是 ListView 的一個元件,它以類似於列表的方式顯示專案,並且能夠垂直滾動。Android 應用程式通常使用 listview 元件。

ListView 的一個簡單示例是,我們手機上的聯絡人應用程式以 ListView 的格式顯示聯絡人列表,該列表是可滾動的。

Android 中的介面卡

從陣列中獲得的資訊儲存在介面卡中,然後介面卡迭代資料集中的每個元素,併為列表中的每個專案建立相應的檢視。透過這種方式,它充當連線各種資料來源和介面卡檢視(如 ListView 和 GridView)的橋樑。

介面卡型別

  • ArrayAdapter - 輸入可以是列表或陣列,但始終接受後者。此外,我們能夠使用 strings.xml 檔案儲存列表元件。

  • CursorAdapter - 它從不將輸入限制為除遊標例項以外的任何內容。

  • SimpleAdapter - 其主要功能是管理非動態資料,而是儲存在資源(如資料庫或陣列)中。

  • BaseAdapter - 它是一個通用的實現,適用於所有三種不同型別的介面卡,並且可以在需要時應用於檢視。

演算法

  • 步驟 1 - 開啟位於 path\re\layout 中的 XML 檔案

  • 步驟 2 - 將上面給出的程式碼貼上到 XML 檔案中

  • 步驟 3 - 從那裡有一個 java 資料夾,選擇 MainActivity.java 檔案並將上述程式碼貼上到其中。

  • 步驟 4 - 選擇一個模擬器或連線要執行應用程式的裝置

  • 步驟 5 - 透過單擊螢幕頂部的執行按鈕來部署程式碼。

  • 步驟 6 - 應用程式將自動在裝置或模擬器上開啟,您可以在其中看到包含運動專案名稱的 ListView。

讓我們看看 Kotlin 中 ListView 的一個示例 -

在這種情況下,首先需要開啟名為 activity_main.xml 的 xml 檔案,該檔案位於 res/layout 資料夾中。

activity_main.xml-

我們在位於 LinearLayout 部分的此檔案中定義和配置 ListView。將來,我們將使用 id 提取包含在 Kotlin 程式碼中的 ListView。我們在位於 LinearLayout 部分的此檔案中定義和配置 ListView。將來,我們將使用 id 提取包含在 Kotlin 程式碼中的 ListView。

在這裡,我們使用 onCreate() 回撥方法載入了 activity_main.xml 檔案。然後,我們使用 findViewById 檢索檔案的內容。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
   xmlns:tools="http://schemas.android.com/tools"
   android:layout_width="match_parent"
   android:layout_height="match_parent"
   android:orientation="vertical">
   <ListView
      android:id="@+id/sportslist"
      android:layout_width="match_parent"
      android:layout_height="wrap_content" >
   </ListView>
</LinearLayout>

MainActivity.kt-

package com.example.myapplication
import android.os.Bundle
import com.google.android.material.snackbar.Snackbar
import androidx.appcompat.app.AppCompatActivity
import androidx.navigation.findNavController
import androidx.navigation.ui.AppBarConfiguration
import androidx.navigation.ui.navigateUp
import androidx.navigation.ui.setupActionBarWithNavController
import android.view.Menu
import android.view.MenuItem
import com.example.myapplication.databinding.ActivityMainBinding
import android.widget.ArrayAdapter
import android.widget.ListView
class MainActivity : AppCompatActivity() {
   override fun onCreate(savedInstanceState: Bundle?) {
      super.onCreate(savedInstanceState)
      setContentView(R.layout.activity_main)

      // use arrayadapter and define an array
      val arrayAdapter: ArrayAdapter<*>
      val users = arrayOf(
         "Football", "Cricket", "Basketball",
         "Hockey", "Golf","Tennis","Baseball"
      )
      // access the listView from xml file
      var mListView = findViewById <ListView>(R.id.sportslist)
      arrayAdapter = ArrayAdapter(this,
         android.R.layout.simple_list_item_1, users)
      mListView.adapter = arrayAdapter
   }
}

輸出

在這裡,我們使用 Android 虛擬裝置 (AVD) 或模擬器來執行應用程式。您也可以在您的裝置上執行此應用程式。

結論

我們已經瞭解瞭如何在 Android 中使用 Kotlin 建立 ListView。您可以從演算法開始,然後轉到文件的程式碼部分。我們還熟悉了使用 ListView 顯示陣列專案的過程。之後,我們選擇了一個模擬器用於執行程式,然後我們部署了程式碼。

更新於: 2023 年 8 月 23 日

2K+ 瀏覽量

啟動您的 職業生涯

透過完成課程獲得認證

開始
廣告