ListView是AdapterView的一种,它显示可滚动视图的垂直列表,并且每个视图都位于另一个视图的下方。使用适配器,将项目从阵列或数据库插入到列表中。为了在列表方法中显示项目,使用setAdaptor()
。 setAdaptor()
方法将适配器与列表结合在一起。
Android ListView是一个ViewGroup,用于显示多行中的项目列表,并包含一个自动将项目插入列表中的适配器。
适配器的主要目的是从阵列或数据库中获取数据,并将放置在列表中的每个项目插入以获得所需的结果。因此,这是从字符串.xml文件中提取数据的主要来源,该文件包含Java或XML文件中所有必需的字符串。
ListView的XML属性
Attribute | Description |
---|---|
android:divider | A color or drawable to separate list items. |
android:dividerHeight | Divider’s height. |
android:entries | Reference to an array resource that will populate the ListView. |
android:footerDividersEnabled | When set to false, the ListView will not draw the divider before each footer view. |
android:headerDividersEnabled | When set to false, the ListView will not draw the divider before each header view. |
如何在Android应用中添加ListView
现在,让我们通过示例了解如何在android应用程序中使用列表视图。在示例中,让我们创建一个Android应用程序,该应用程序将显示GeeksforGeeks门户中可用的教程列表。
步骤1:创建一个新项目
- 单击文件,然后单击新建=>新建项目。
- 为项目模板选择“空活动”。
- 选择语言作为Java。
- 根据需要选择最小的SDK。
步骤2:修改activity_main.xml文件
在activity_main.xml
文件中添加一个ListView。
activity_main.xml
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 arr;
arr
= new ArrayAdapter(
this,
R.layout.support_simple_spinner_dropdown_item,
tutorials);
l.setAdapter(arr);
}
}
步骤3:修改MainActivity。 Java文件
在本节中,让我们设计应用程序的后端。转到MainActivity.java
。现在,在Java文件中创建一个字符串数组,并将要显示的值存储在列表中。此外,创建一个ListView类的对象。在onCreate()
方法中,使用findViewById()
方法按ID查找Listview。使用新关键字和构造函数调用创建ArrayAdapter对象。 ArrayAdaptor公共构造函数的描述如下:
public ArrayAdapter (Context context, int Resource, T[ ] objects)
Parameter |
Description |
---|---|
context | current context |
Resource | the resource ID for a layout file |
objects | objects to display in the ListView |
根据此步骤,在ArrayAdapter构造函数中创建参数并创建一个对象。最后,使用setAdapter()
方法将适配器与列表结合起来。
主要活动。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 arr;
arr
= new ArrayAdapter(
this,
R.layout.support_simple_spinner_dropdown_item,
tutorials);
l.setAdapter(arr);
}
}
输出