Android 中自定义 Adapter

publicclassMyListViewAdapterextendsBaseAdapter {

privateContextmContext=null;

privateLayoutInflatermLayoutInflater=null;

privateList<Map<String, Object>>mList=null;

//构造方法,参数list传递的就是这一组数据的信息

publicMyListViewAdapter(Context context, List<Map<String, Object>> list) {

this.mList= list;

this.mContext= context;

this.mLayoutInflater= LayoutInflater.from(mContext);

}

//得到总的数量

@Override

publicintgetCount() {

//TODOAuto-generated method stub

returnthis.mList!=null?this.mList.size() : 0;

}

//根据位置得到View对象

@Override

publicObject getItem(intposition) {

//TODOAuto-generated method stub

returnthis.mList.get(position);

}

//根据ListView位置得到List中的ID

@Override

publiclonggetItemId(intposition) {

//TODOAuto-generated method stub

returnposition;

}

//根据位置得到View对象

@Override

publicView getView(intposition, View convertView, ViewGroup parent) {

//TODOAuto-generated method stub

//得到条目中的子组件

ViewHolder holder =null;

if(convertView ==null) {

holder =newViewHolder();

convertView =mLayoutInflater.inflate(R.layout.activity_main_item,null);

holder.imageHead= (ImageView) convertView.findViewById(R.id.imageHead);

holder.name= (TextView) convertView.findViewById(R.id.name);

holder.time= (TextView) convertView.findViewById(R.id.time);

holder.content= (TextView) convertView.findViewById(R.id.content);

holder.imageContent= (ImageView) convertView.findViewById(R.id.imageContent);

holder.transmit= (TextView) convertView.findViewById(R.id.transmit);

holder.comment= (TextView) convertView.findViewById(R.id.comment);

convertView.setTag(holder);

}else{

holder = (ViewHolder) convertView.getTag();

}

//ListViewItem中的控件的操作

holder.imageHead.setImageResource((Integer) mList.get(position).get("imageHead"));
holder.name.setText(mList.get(position).get("name").toString());
holder.time.setText(mList.get(position).get("time").toString());
holder.content.setText(mList.get(position).get("content").toString());
holder.imageContent.setImageResource((Integer) mList.get(position).get("imageContent"));
holder.transmit.setText(mList.get(position).get("transmit").toString());
holder.comment.setText(mList.get(position).get("comment").toString());

returnconvertView;

}

// 定义一个内部类来管理条目中的子组件

publicfinalclassViewHolder {

publicImageViewimageHead=null;

publicImageViewimageContent=null;

publicTextViewtime=null;

publicTextViewname=null;

publicTextViewcontent=null;

publicTextViewcomment=null;

publicTextViewtransmit=null;

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值