package com.uas.yuejiahong.adapter; import android.content.Context; import android.os.Handler; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.BaseAdapter; import android.widget.CheckBox; import android.widget.CompoundButton; import android.widget.TextView; import com.uas.yuejiahong.R; import com.uas.yuejiahong.bean.BarcodeSuppleBean; import com.uas.yuejiahong.util.CommonUtil; import com.uas.yuejiahong.util.Constants; import java.util.ArrayList; import java.util.List; public class BarcodeSupplePrintAdapter extends BaseAdapter { private List objects = new ArrayList(); private Context context; private LayoutInflater layoutInflater; private Handler mHandler; public BarcodeSupplePrintAdapter(Context context) { this.context = context; this.layoutInflater = LayoutInflater.from(context); } public Handler getHandler() { return mHandler; } public void setHandler(Handler handler) { mHandler = handler; } public List getBarcodeSuppleBeans() { return objects; } public void setBarcodeSuppleBeans(List objects) { this.objects = objects; } @Override public int getCount() { return objects.size(); } @Override public BarcodeSuppleBean getItem(int position) { return objects.get(position); } @Override public long getItemId(int position) { return position; } @Override public View getView(int position, View convertView, ViewGroup parent) { if (convertView == null) { convertView = layoutInflater.inflate(R.layout.item_barcode_supple_print, null); convertView.setTag(new ViewHolder(convertView)); } initializeViews((BarcodeSuppleBean) getItem(position), (ViewHolder) convertView.getTag()); return convertView; } private void initializeViews(final BarcodeSuppleBean object, ViewHolder holder) { holder.barcodeSupplePrintItemSelectCb.setChecked(object.isChecked()); holder.barcodeSupplePrintItemProdcodeTv.setText(object.getBSD_PRODCODE()); holder.barcodeSupplePrintItemInqtyTv.setText(CommonUtil.doubleFormat(object.getBSD_BARCODEINQTY())); holder.barcodeSupplePrintItemCnTv.setText(CommonUtil.doubleFormat(object.getCN())); holder.barcodeSupplePrintItemSelectCb.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { object.setIsChecked(isChecked); if (mHandler != null) { mHandler.sendEmptyMessage(Constants.CONSTANT.BARCODE_SUPPLE_CHECK); } } }); } protected class ViewHolder { private CheckBox barcodeSupplePrintItemSelectCb; private TextView barcodeSupplePrintItemProdcodeTv; private TextView barcodeSupplePrintItemInqtyTv; private TextView barcodeSupplePrintItemCnTv; public ViewHolder(View view) { barcodeSupplePrintItemSelectCb = (CheckBox) view.findViewById(R.id.barcode_supple_print_item_select_cb); barcodeSupplePrintItemProdcodeTv = (TextView) view.findViewById(R.id.barcode_supple_print_item_prodcode_tv); barcodeSupplePrintItemInqtyTv = (TextView) view.findViewById(R.id.barcode_supple_print_item_inqty_tv); barcodeSupplePrintItemCnTv = (TextView) view.findViewById(R.id.barcode_supple_print_item_cn_tv); } } }