ListView 是 AdapterView 的一種類型,它顯示 scroll-able 視圖的垂直列表,並且每個視圖一個一個地放置在另一個視圖的下麵。使用適配器,項目可以從數組或數據庫插入到列表中。為了顯示列表中的項目,使用了setAdaptor()
方法。 setAdaptor()
方法將適配器與列表連接起來。
Android ListView 是 ViewGroup,用於顯示多行項目列表,並包含一個自動將項目插入列表的適配器。
適配器的主要用途是從數組或數據庫中獲取數據,並將每個項目插入到列表中以獲得所需的結果。因此,它是從 strings.xml 文件提取數據的主要來源,該文件包含 Java 或 XML 文件中所有必需的字符串。
ListView 的 XML 屬性
屬性 | 說明 |
---|---|
安卓:分頻器 | 用於分隔列表項的顏色或可繪製對象。 |
android:dividerHeight | 分隔器的高度。 |
安卓:條目 | 對將填充 ListView 的數組資源的引用。 |
android:footerDividersEnabled | 當設置為 false 時,ListView 將不會在每個頁腳視圖之前繪製分隔線。 |
android:headerDividersEnabled | 當設置為 false 時,ListView 將不會在每個標題視圖之前繪製分隔線。 |
如何在 Android 應用程序中添加ListView
現在讓我們通過示例了解如何在 Android 應用程序中使用列表視圖。在示例中,我們創建一個 Android 應用程序,它將顯示 GeeksforGeeks 門戶中可用的教程列表。
第 1 步:創建一個新項目
- 單擊“文件”,然後單擊“新建”=>“新建項目”。
- 選擇 “Empty Activity” 作為項目模板。
- 選擇語言為 Java。
- 根據您的需要選擇最小的 SDK。
步驟2:修改activity_main.xml文件
在中添加ListViewactivity_main.xml
文件。
activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<ListView
android:id="@+id/list"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
</LinearLayout>
步驟3:修改MainActivity.java文件
在本節中,我們來設計應用程序的後端。去MainActivity.java
。現在在 java 文件中創建一個字符串數組並存儲要在列表中顯示的值。另外,創建一個 ListView 類的對象。在onCreate()
方法通過 id 查找 Listview 使用findViewById()
方法。使用 new 關鍵字創建 ArrayAdapter 對象,然後調用構造函數。 ArrayAdaptor 公共構造函數說明如下:
public ArrayAdapter (Context context, int Resource, T[ ] objects)
參數 |
Description |
---|---|
context | 當前背景 |
Resource | 布局文件的資源 ID |
objects | 要在 ListView 中顯示的對象 |
根據此傳遞 ArrayAdapter 構造函數中的參數並創建一個對象。最後,使用setAdapter()
方法將適配器與列表連接起來。
MainActivity.java
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.ListView;
public class MainActivity extends AppCompatActivity {
ListView l;
String tutorials[]
= { "Algorithms", "Data Structures",
"Languages", "Interview Corner",
"GATE", "ISRO CS",
"UGC NET CS", "CS Subjects",
"Web Technologies" };
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
l = findViewById(R.id.list);
ArrayAdapter<String> arr;
arr
= new ArrayAdapter<String>(
this,
R.layout.support_simple_spinner_dropdown_item,
tutorials);
l.setAdapter(arr);
}
}
輸出
相關用法
- Java AnnotatedElement getAnnotationsByType()用法及代碼示例
- Java AnnotatedElement getDeclaredAnnotations()用法及代碼示例
- Java AnnotatedElement getDeclaredAnnotation()用法及代碼示例
- Java AnnotatedElement getDeclaredAnnotationsByType()用法及代碼示例
- Java AnnotatedElement isAnnotationPresent()用法及代碼示例
- Java AnnotatedElement getAnnotations()用法及代碼示例
- Java ArrayList add()用法及代碼示例
- Java ArrayList addAll()用法及代碼示例
- Java ArrayList clear()用法及代碼示例
- Java ArrayList clone()用法及代碼示例
- Java ArrayList contains()用法及代碼示例
- Java ArrayList get()用法及代碼示例
- Java ArrayList indexOf()用法及代碼示例
- Java ArrayList removeAll()用法及代碼示例
- Java ArrayList remove()用法及代碼示例
- Java ArrayList size()用法及代碼示例
- Java ArrayList isEmpty()用法及代碼示例
- Java ArrayList subList()用法及代碼示例
- Java ArrayList set()用法及代碼示例
- Java ArrayList sort()用法及代碼示例
- Java ArrayList toArray()用法及代碼示例
- Java ArrayList toString()用法及代碼示例
- Java ArrayList ensureCapacity()用法及代碼示例
- Java ArrayList lastIndexOf()用法及代碼示例
- Java ArrayList retainAll()用法及代碼示例
注:本文由純淨天空篩選整理自pragatidhabhai大神的英文原創作品 Android Listview in Java with Example。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。