虽然学习android有一段时间了,但是总是感觉自己没有多大的提升,所以想把自己以后学习的内容都记录下来,也方便自己以后的查询和浏览,希望在这里,有一个全新的学习生活,嘿嘿
在android开发中,listView的使用频率颇高,所以adapter的应用也是相当多,现在我就来简要的介绍一下我们继承BaseAdapter的开发方式。
首先我们会先创建一个bean类,也就是我们用到的数据的数据结构,这个类的形式也很简单,包含私有变量、构造方法(完成对变量的初始化)、get和set方法。
其次我们会创建一个Adapter,这时候我们会继承我们的BaseAdapter,然后实现BaseAdapter的方法,其中主要说的就是 getView()方法。
1)在创建这个adapter的时候我们首先会创建一个ViewHolder类,用于listView的item布局中控件的一一对应,我们只需要定义相应的控件就可以。
2)然后再在getview()中像如下方式编写
ViewHolder viewHolder;//定义ViewHolder
if (convertView == null) {//充分体现listView的缓存机制
viewHolder = new ViewHolder();
convertView = mInflater.inflate(R.layout.item_main, null);
viewHolder.imageView = (ImageView) convertView.findViewById(R.id.id_item_iv);
viewHolder.title = (TextView) convertView.findViewById(R.id.id_item_title_tv);
viewHolder.content = (TextView) convertView.findViewById(R.id.id_item_content_tv);
convertView.setTag(viewHolder);
} else {
viewHolder = (ViewHolder) convertView.getTag();
}
ItemBean bean = mList.get(i);
viewHolder.imageView.setImageResource(bean.ItemImageResid);
viewHolder.title.setText(bean.ItemTitie);
viewHolder.content.setText(bean.ItemContent);
return convertView;
注意
ViewHolder是google推荐的一种写adapter的方式,希望自己和大家以后可以多多引用,提高代码的效率。