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。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。