List View适配器
- List View布局在平常的代码编写中很常见,用于文档中以列表的形式显示内容,可以作为介绍用,也是布局控件的一种
2.在进行List View 控件的使用时,需要创建一个主视图xml文件中书写List View控件,然后需要创建一个item文档用于设置List View控件内容。
3.由于要将数据与视图进行传递,所以需要创建适配器进行数据的传递。
4.在所有的适配器中都是以BaseAdapter为父类,通过编写适配器继承父类,实现父类的方法,实现适配数据的传递。
5.在创建适配器之前,需要创建一个View Holder类,用于操作item中的数据,这样能够加快系统的运行效率。
代码如下:
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder;//好处是每次使用布局文件的时候,都不会资源文件中重新加载
if(convertView==null)//如果旧视图为空
{
convertView= LayoutInflater.from(getApplicationContext()).inflate(R.layout.items,parent,false);//通过inflate方法获取布局资源
//LayoutInflater.from,从context中获取一个布局填充器,这样便可将xml文件转化为view对象,getApplicationContext是在Adapter中获取context对象
//inflate是将xml布局转化为view对象
holder=new ViewHolder();
//获取旧布局资源
holder.item_iv=convertView.findViewById(R.id.item_iv);
holder.item_tv=convertView.findViewById(R.id.item_tv);
convertView.setTag(holder);
}
else {
holder= (ViewHolder) convertView.getTag();
}
//将内容赋值在界面中
holder.item_iv.setImageResource(icons[position]);
holder.item_tv.setText(names[position]);
return convertView;
}
public class ViewHolder{
private ImageView item_iv;
private TextView item_tv;
}
}
}