Android ListView使用

本文详细介绍了Android中ListView的使用,从基础用法到自定义界面,再到性能优化。首先,解释了ListView的基本概念和简单应用,包括设置ListView属性、使用ArrayAdapter绑定数据。接着,探讨了自定义ListView界面的步骤,如创建自定义布局、继承并重写ArrayAdapter,特别是优化ListView性能的ViewHolder技术。最后,提到了SimpleAdapter和BaseAdapter,它们分别在多文本、多图片显示和全面自定义场景下的应用。
摘要由CSDN通过智能技术生成

1.ListView的用法

1.什么是LIstView?

LIstView是用来显示一些数据量很大的布局方式,排列的方式显示在界面中,如果数据量超出界面显示的内容,可以滚动显示。

2.ListView的简单用法

 ListView中常用的属性:

请参考Android ListView常用属性解析 - 简书

创建一个简单的ListView布局:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
>
    <!--布局一定要铺满,使用warp_parent可能会只出现一个Item的情况-->
    <ListView   android:id="@+id/listView"
                android:layout_width="match_parent"
                android:layout_height="match_parent">
    </ListView>
</LinearLayout>

创建Activity与LIstView布局中的连接

class ListViewActivity : AppCompatActivity() {
//    初始化集合
    private val data:List<String> = listOf("as","2","3","4");
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_list_view);
        val inflate = ActivityListViewBinding.inflate(layoutInflater)
        super.setContentView(inflate.root);
//        listView无法直接在界面中加载,必须搭配适配器使用,R.layout.simple_dropdown_item_1line为安卓自带的简单布局
        val adapter = ArrayAdapter(this,android.R.layout.simple_list_item_1,data);
//        传入适配器
        inflate.listView.adapter = adapter;
    }
}
  1. 由于listView要显示大量数据,所以将要数据提前准备好装载在到List中

    private val data:List<String> = listOf("as","2","3","4");

  2. 集合数据是无法直接传递到ListView的所以需要创建一个适配器,Android已经提前准备好了很多适配器,这里使用最简单的ArrayAdapter,Adapter接受三个参数

    1.上下文

    2.子布局使用的是系统自带的android.R.layout.simple_list_item_1,是一个只显示文本的简单布局

    3.List<T>装载的是数据源,也就是提前准备好的List

     // 创建适配器对象:参数 1.上下文 2.子视图 3.List<T>
    val adapter = ArrayAdapter(this,android.R.layout.simple_list_item_1,data);
  3. 调用listView对象的setAdapter()方法将适配器对象传入其中,这样适配器于LIstView中的关联就建立完成了,运行后

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值