2021-08-03

Android中ListView布局及BaseAdapter的常规简单用法

在这里插入图片描述
如图先创建一个SearchFlightsAdapter适配器,其中有两个参数上下文,就是当前页面的activity,json形式的数组。
在这里插入图片描述
在创建的适配器要继承BaseAdapter
之后,还要设置对应的两个参数,将数据传入MyBaseAdapter中。其中this.jsonArray = jsonArray;的意思是将传入的形参赋值给我们的私有变量以供使用。activity是在后面要调用到,
一个TextView显然满足不了我们的需要,这也完全不能显示BaseAdapter的全能性。那接下来,就来展示一下如何用BaseAdapter显示一个自定义布局。
对BaseAdapter我们要了解这四个方法:
getCount, getItem, getItemId, getView

getCount : 要绑定的条目的数目,比如格子的数量(直接返回数组的长度)
getItem : 根据一个索引(位置)获得该位置的对象
getItemId : 获取条目的id
getView : 获取该条目要显示的界面
可以简单的理解为,adapter先从getCount里确定数量,然后循环执行getView方法将条目一个一个绘制出来,所以必须重写的是getCount和getView方法。而getItem和getItemId是调用某些函数才会触发的方法,如果不需要使用可以暂时不修改。

因此,接下来,我们应该写getView
首先新建一个layout,我命名为list_search,这个就是我们每个条目要展示的布局
在这里插入图片描述
接下来修改getView方法,让它显示我们这个item布局
LayoutInflater是用来加载布局的,用LayoutInflater的inflate方法就可以将你的item布局绘制出来。其中getView方法中的三个参数,position是指现在是第几个条目;convertView是旧视图,就是绘制好了的视图;parent是父级视图,也就是ListView之类的。
用inflate方法绘制好后的view最后return返回给getView方法就可以了。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值