package com.ectrip.cyt.adapter; import java.util.List; import android.content.Context; import android.view.View; import android.view.ViewGroup; import android.widget.BaseAdapter; import android.widget.CheckBox; import android.widget.CompoundButton; import android.widget.CompoundButton.OnCheckedChangeListener; import android.widget.TextView; import com.ectrip.cyt.response.OrderConsumedItem; import com.ectrip.trips.check.R; /** * @author jigo 补打adapter */ public class RePrintAdapter extends BaseAdapter { private List items; private Context context; private List rePrintList; public RePrintAdapter(Context context, List items, List rePrintList) { this.items = items; this.context = context; this.rePrintList = rePrintList; } @Override public int getCount() { if (items != null) { return items.size(); } return 0; } @Override public OrderConsumedItem getItem(int position) { if (items != null) { return items.get(position); } return null; } @Override public long getItemId(int position) { return position; } @Override public View getView(final int position, View convertView, ViewGroup parent) { ViewHold hold; if (convertView == null) { hold = new ViewHold(); convertView = View.inflate(context, R.layout.item_order_consumed, null); hold.orderDetailIdText = (TextView) convertView .findViewById(R.id.orderDetailIdText); hold.timeConsumedText = (TextView) convertView .findViewById(R.id.timeConsumedText); hold.moneyText = (TextView) convertView .findViewById(R.id.moneyText); hold.check = (CheckBox) convertView.findViewById(R.id.check); convertView.setTag(hold); } else { hold = (ViewHold) convertView.getTag(); } if (getItem(position) != null) { hold.orderDetailIdText.setText(getItem(position).getOrderDetailId() + ""); if (getItem(position).getConsumedTime() != null) { hold.timeConsumedText.setText(getItem(position) .getConsumedTime()); } hold.moneyText.setText(getItem(position).getConsumedQuantity() + ""); hold.check .setOnCheckedChangeListener(new OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { if (isChecked) { rePrintList.add(new Integer(position)); } else { if (rePrintList.contains(new Integer(position))) { rePrintList.remove(rePrintList.indexOf(new Integer(position))); } } } }); } if(rePrintList.contains(new Integer(position))){ hold.check.setChecked(true); }else{ hold.check.setChecked(false); } return convertView; } class ViewHold { private TextView orderDetailIdText; // 流水号 private TextView timeConsumedText; // 消费时间 private TextView moneyText; // 消费金额 private CheckBox check;// 选择 } }