android 自定义Adapter(自留)
public class GiftListItemAdapter extends BaseAdapter{
private ArrayList<GiftItem> data;
private Context context;
private LayoutInflater myInflater;
public GiftListItemAdapter(Context context,ArrayList<GiftItem> data){
this.context=context;
this.data=data;
myInflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
}
@Override
public int getCount() {
return data.size();
}
@Override
public Object getItem(int position) {
return data.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
GiftViewHolder holder;
if(null == convertView){
holder = new GiftViewHolder();
convertView = myInflater.inflate(R.layout.gift_list_item, null);
holder.gift_list_item_layout=(RelativeLayout) convertView.findViewById(R.id.gift_list_item_layout);
holder.gift_list_item_imgv = (ImageView) convertView.findViewById(R.id.gift_list_item_imgv);
holder.gift_list_item_name=(TextView) convertView.findViewById(R.id.gift_list_item_name);
holder.gift_list_item_price=(TextView) convertView.findViewById(R.id.gift_list_item_price);
holder.gift_list_item_remain=(TextView) convertView.findViewById(R.id.gift_list_item_remain);
convertView.setTag(holder);
}else{
holder = (GiftViewHolder) convertView.getTag();
}
holder.gift_list_item_imgv.setImageResource(data.get(position).getImg_id());
holder.gift_list_item_name.setText(data.get(position).getName());
holder.gift_list_item_price.setText(data.get(position).getPrice()==0?"免费":data.get(position).getPrice()+"元");
holder.gift_list_item_remain.setText("剩余"+data.get(position).getRemain()+"件");
final String text = data.get(position).getName();
holder.gift_list_item_layout.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(context, text,
Toast.LENGTH_SHORT).show();
Intent intent = new Intent();
intent.setClass(context, AdapterListViewActivity.class);
context.startActivity(intent);
}
});
return convertView;
}
}
class GiftViewHolder{
RelativeLayout gift_list_item_layout;
ImageView gift_list_item_imgv;
TextView gift_list_item_name;
TextView gift_list_item_price;
TextView gift_list_item_remain;
}