Android笔记——定制ListView的界面

来源:互联网 发布:利淘网淘宝 编辑:程序博客网 时间:2024/05/17 23:37

单独的显示一个文本的ListView很是不好看,我们平时生活中看的腾讯新闻列表,都是左边一列都是图片,右边显示新闻的标题,标题下方是新闻的简介,美观大方。因此我们先要准备好一组图片,然后定义一个实体类,作为ListView适配器的适配类型。这里我左边是水果图片,右边是水果的文字,首先来看下完成之后的效果动态图:

(代码参考第一行代码)

新建类Fruit.java文件:

这个类有两个字段,一个是水果的名字,另一个是水果图片的资源id号,然后为ListView子项指定一个我们自定义的布局。

layout目录新建fruit_item.xml,添加如下代码:

当然用的是线性布局,一个ImageView用于显示图片,一个TextView用于显示文字。和我们建的类对应上来了。由于图片资源和文字资源是无法直接传给一个ListView的,因此我们需要一个适配器,这里自定义我们自己的一个适配器,它继承自ArrayAdapter,把它的泛型指定为Fruit.新建类FruitAdapter.java文件:

它重写了父类ArrayAdapter的构造函数,将上下文context,ListView布局文件(刚才写的fruit_item的xml文件)。getView中新建一个Fruit类,getItem用于获取当前Fruit的实例,这个是它自带的方法,我们不需要管。然后给这个实例传入我们自己的布局,getContext()明显获取的是当前上下文MainActiviy.this,inflate()将我们的fruit_item传进去,最后分别获取图片的Id和文字的ID,再给它们传入资源文件,将这个布局返回,适配器就完成了。

最后直接将数据传入我们的适配器,将适配器传给ListView,这样整个界面就完成了。

点击运行就可以看到效果图了。(代码参考第一行代码)

以上。。


阅读全文
0 0
原创粉丝点击