Android定制ListView的界面(使用继承自ArrayAdapter的自定义适配器)--《第一行代码Android》学习笔记...

ListView控件用于实现程序中的内容在屏幕上滚动的效果,大部分日常使用的应用程序都会使用ListView控件。

一、简单ListView的用法

简单ListView,即实现只有多个文本内容的滚动显示(不含有图片)。效果如图…

简单ListView

关键代码如下:

ArrayAdapter<String> adapter = new ArrayAdapter<String>(
        MainActivity.this, android.R.layout.simple_list_item_1, data); //新建适配器
ListView listView = (ListView) findViewById(R.id.list_View);
listView.setAdapter(adapter); //加载适配器

首先需要在主布局文件中加入ListView控件,然后希望将数据传递给ListView。然而数据的传递必须借助“适配器(Adapter)”来完成,在这里使用android.widget.ArrayAdapter<T>ArrayAdapter<T>在定义时需要指定泛型为”要适配的数据类型“,这里即为String类型。

查阅API可知,共有6种重载形式的 ArrayAdapter 构造函数,由于想要传入的数据源data为字符串数组类型,所以应选择ArrayAdapter(Context context, int resource, T[] objects)并将泛型T指定为String,这样,该构造函数接受的形参为String[] objects符合我们的要求。注意,是先有要适配的数据,然后根据数据类型选择正确的构造函数。

从接收数组类型的参数上来看,还有一个符合要求的构造函数ArrayAdapter(Context context, int resource, int textViewResourceId, T[] objects),我们不使用它的原因是,并不需要这么多参数。这四个参数的含义依次为:

  • Context context:当前上下文(我的理解是:当前代码需要工作中哪个活动中,就传入哪个活动)

  • int resource:ListView的每一个列表项(子项)的布局文件(对于简单ListView来说,子项为布局为TextView纯文本,Android已内置这种布局文件,不需自行创建XML文件)

  • int textViewResourceId:子项布局中用来显示文字的TextView的id(在自定义ListView中,子项布局可能是一个图片ImageView和一个文本TextView,这里要传入TextView的ID)

  • T[] objects:泛型数组,指定泛型后变为相应类型的数组

二、自定义ListView的方法

版权声明:欢迎转载,转载请注明出处。

转载于:https://my.oschina.net/u/2438514/blog/516252

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值