自定义适配器
来源:互联网 发布:excel剔除某些数据求和 编辑:程序博客网 时间:2024/06/06 07:30
案例一 图文混排:
第一步:定义使用到的组件
ListView listview=null;
第二步:书写一个方法,在方法中完成数据的加工
public void initdata(){
List<Map<String,Object>> data=new ArrayList<Map<String,Object>();
for(int i=1;i<=10;i++){
Map<String,Object> map=new HashMap<String,Object>();
map.put("image", R.drawable.ic_launcher);
map.put("content", "光头强又看书了");
data.add(map);
}
}
第三步: 自定义适配器
1>定义一个静态内部类,定义布局中的各种组件
static class ViewHolder{
public ImageView image;//在自定义布局文件中也要做哦
public TextView content;
}
2>自定义适配器
public class MyAdapter extends BaseAdapter{
//加载布局文件
private LayoutInflater layoutInflater;
public MyAdapter(Context context){
layoutInflater=(layoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
}
//在继承BaseAdapter类必须实现四个方法
//获得数据总大小
public int getCount() {
return data.size();
}
//获得位置
public Object getItem(int position) {
return position;
}
//获得位置的编号
public long getItemId(int position) {
return position;
}
//
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder =null;
if(convertView==null){
//加载布局文件
convertView=layoutInflater.inflate(R.layout.item, null);
hodler=new ViewHolder();
//将获得的控件对象放到hodler中
hodler.image=(ImageView) convertView.findViewById(R.id.image);
hodler.image=(TextView) convertView.findViewById(R.id.content);
//做个tag标记
convertView.setTag(holder);
}else{
hodler=(ViewHolder) converView.getTag();
}
//将数据绑定到控件中
holder.image.setBackgroundResource((Integer)data.get(position).get("image"));
holder.content.setText(data.get(postion).get("content").toString());
return convertView;
}
第四步:在主UI中添加适配器
listview .setAdapter(new MyAdapter());
第一步:定义使用到的组件
ListView listview=null;
第二步:书写一个方法,在方法中完成数据的加工
public void initdata(){
List<Map<String,Object>> data=new ArrayList<Map<String,Object>();
for(int i=1;i<=10;i++){
Map<String,Object> map=new HashMap<String,Object>();
map.put("image", R.drawable.ic_launcher);
map.put("content", "光头强又看书了");
data.add(map);
}
}
第三步: 自定义适配器
1>定义一个静态内部类,定义布局中的各种组件
static class ViewHolder{
public ImageView image;//在自定义布局文件中也要做哦
public TextView content;
}
2>自定义适配器
public class MyAdapter extends BaseAdapter{
//加载布局文件
private LayoutInflater layoutInflater;
public MyAdapter(Context context){
layoutInflater=(layoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
}
//在继承BaseAdapter类必须实现四个方法
//获得数据总大小
public int getCount() {
return data.size();
}
//获得位置
public Object getItem(int position) {
return position;
}
//获得位置的编号
public long getItemId(int position) {
return position;
}
//
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder =null;
if(convertView==null){
//加载布局文件
convertView=layoutInflater.inflate(R.layout.item, null);
hodler=new ViewHolder();
//将获得的控件对象放到hodler中
hodler.image=(ImageView) convertView.findViewById(R.id.image);
hodler.image=(TextView) convertView.findViewById(R.id.content);
//做个tag标记
convertView.setTag(holder);
}else{
hodler=(ViewHolder) converView.getTag();
}
//将数据绑定到控件中
holder.image.setBackgroundResource((Integer)data.get(position).get("image"));
holder.content.setText(data.get(postion).get("content").toString());
return convertView;
}
第四步:在主UI中添加适配器
listview .setAdapter(new MyAdapter());
0 0
- 自定义适配器
- 自定义适配器
- 自定义适配器
- 自定义适配器
- 自定义适配器
- 自定义适配器
- 自定义适配器
- 自定义适配器
- 自定义适配器
- 自定义适配器
- 自定义适配器
- 自定义适配器
- 自定义适配器
- 简单适配器(自定义适配器)
- 自定义ListView适配器onclick
- ListView自定义适配器
- ListView 之 自定义适配器
- 自定义适配器小结
- QT设计师中关于信号槽的连接仅仅是connect的连接,不能省略槽的声明
- 正则表达式基础
- POJ 2251 Dungeon Master
- 新手做网站优化要思考三个本质问题!
- 粗糙集的代数概念和代数观点下约简
- 自定义适配器
- Mondrian Schema workbench工作界面 简介
- 排序算法
- c语言中逗号运算符和逗号表达式
- Java虚拟机JVM学习01 流程概述==原理性学习
- 螺旋矩阵
- XMPP协议学习笔记一
- 多线程下载的原理
- 题目1077:最大序列和