自定义适配器
来源:互联网 发布:百度软件助手 skype 编辑:程序博客网 时间:2024/06/06 06:44
直接上代码://传对象
public class MessageBean{
int Icon; //想实现一张图片,配一个标题和一段文字说明
String title;
String content;
}
public class MyAadapter extends baseAdapter{
private ArrayList<MessageBean> list = new ArrayList<>();
LayoutInflater layoutInflater ;
public MyAdapter(Context context,ArrayList<MessageBean> list){
layoutInflater=LayoutInflater.from(context);
this.list=list;
}
@Override public int getCount() { return list.size(); } @Override public Object getItem(int position) { return list.get(position); } @Override public long getItemId(int position) { return position; }
public View getView(intposition,View convertView,ViewGroupparent){
ViewHolder viewHolder;
if (convertView==null){
convertView=layoutInflater.inflate(R.layout.item_listView_style,null) ;
//第一次优化代码
ImageView iconImg = (ImageView) convertView.findViewById(R.id.list_img); TextView titleTxt = (TextView) convertView.findViewById(R.id.list_title); TextView contentTxt = (TextView) convertView.findViewById(R.id.list_text1);
//第二次优化代码 用viewHolder暂时保存,避免运行是重复加载,导致内存溢出
viewHolder=new ViewHolder(); viewHolder.iconImg=iconImg; viewHolder.titleTxt=titleTxt; viewHolder.contentTxt=contentTxt;convertView.setTag(viewHolder);
}
viewHolder=(viewHolder)convertView.getTag();
MessageBean messageBean = (MessageBean)getItem(position);
viewHolder.iconImg.setImageResourse(messageBean.getIconImg());
viewHolder.titleTxt.setText(messageBean.gettitleTxt());
viewHolder.contentTxt.setText(messageBean.getcontentTxt());
return convertView;
}
public class ViewHolder{
imageView icon;
textView title;
textView content;
}
}
然后再写一个数据源
public arrayList GetData(){
private ArrayList<MeaasgeBean> data = new ArrayList<>();
MessageBean item= new MessageBean;
item.seticonImg(R.mipmap.mao1);
item.settitleTxt("标题");
item.setcontentTxt("内容描述");
data.add(item);
item= new MessageBean;
item.seticonImg(R.mipmap.mao1);
item.settitleTxt("标题");
item.setcontentTxt("内容描述");
data.add(item);
item= new MessageBean;
item.seticonImg(R.mipmap.mao1);
item.settitleTxt("标题");
item.setcontentTxt("内容描述");
data.add(item);
item= new MessageBean;
item.seticonImg(R.mipmap.mao1);
item.settitleTxt("标题");
item.setcontentTxt("内容描述");
data.add(item);
}
这样,最不好写的适配器和数据源都写好了,然后直接拿来用就行了
- 自定义适配器
- 自定义适配器
- 自定义适配器
- 自定义适配器
- 自定义适配器
- 自定义适配器
- 自定义适配器
- 自定义适配器
- 自定义适配器
- 自定义适配器
- 自定义适配器
- 自定义适配器
- 自定义适配器
- 简单适配器(自定义适配器)
- 自定义ListView适配器onclick
- ListView自定义适配器
- ListView 之 自定义适配器
- 自定义适配器小结
- 基于python多线程实现Linux任务并发执行
- Swift - 文本输入框(UITextField)的用法
- 全志 A20 camera移植--转载(惜爷)
- iOS 开发中总结
- fiddler高级使用技巧
- 自定义适配器
- Java实验(16) 我的计算器
- 终于用git上传了自己的项目
- Leetcode 26
- 有关xib的小知识
- 自我介绍
- Bootstrap Modal遮罩弹出层
- MyEclipse集成Tomcat服务器
- openstack 安装常见配置和错误处理