package coolbuy360.adapter; import java.util.List; import java.util.Map; import android.R.string; import android.app.Activity; import android.content.Context; import android.content.Intent; import android.net.Uri; import android.os.Bundle; import android.view.LayoutInflater; import android.view.MotionEvent; import android.view.View; import android.view.View.OnClickListener; import android.view.View.OnTouchListener; import android.view.ViewGroup; import android.widget.BaseAdapter; import android.widget.Button; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.TextView; import coolbuy360.logic.ConstantsSetting; import coolbuy360.searchhealth.DrugStoreMap; import coolbuy360.searchhealth.R; import coolbuy360.searchhealth.DrugStoreMap.LoadMode; import coolbuy360.searchhealth.DrugStoreMap.ReturnMode; import coolbuy360.service.Util; public class detailListViewAdapter extends BaseAdapter { private List<Map<String, String>> drugstore_list; private LayoutInflater inflater; public int count = ConstantsSetting.QLDefaultPageSize; // private OnClickListener onClickListener; private Context _context; private String _drugid; public detailListViewAdapter(Context context, List<Map<String, String>> drugstorelist, OnClickListener onclick) { // TODO Auto-generated constructor stub _context = context; this.drugstore_list = drugstorelist; inflater = (LayoutInflater) context .getSystemService(Context.LAYOUT_INFLATER_SERVICE); // this.onClickListener=onclick; } public detailListViewAdapter(Context context, List<Map<String, String>> drugstorelist, String drugID) { // TODO Auto-generated constructor stub _context = context; _drugid = drugID; this.drugstore_list = drugstorelist; inflater = (LayoutInflater) context .getSystemService(Context.LAYOUT_INFLATER_SERVICE); // this.onClickListener=onclick; } @Override public int getCount() { // TODO Auto-generated method stub return count; } @Override public Object getItem(int position) { // TODO Auto-generated method stub return drugstore_list.get(position); } @Override public long getItemId(int position) { // TODO Auto-generated method stub return position; } @Override public View getView(int position, View convertView, ViewGroup parent) { // TODO Auto-generated method stub final int tposition = position; if (convertView == null) { convertView = inflater.inflate(R.layout.p_store_item, null); } TextView storetitle = (TextView) convertView .findViewById(R.id.p_store_item_name); TextView drugprice = (TextView) convertView .findViewById(R.id.p_store_item_nowprice); /*Button callphone=(Button)convertView.findViewById(R.id.p_store_item_call);*/ TextView distancetxt = (TextView) convertView .findViewById(R.id.p_store_item_distance); ImageView baoImg = (ImageView) convertView .findViewById(R.id.p_store_item_bao); ImageView dingImg = (ImageView) convertView .findViewById(R.id.p_store_item_ding); ImageView songImg = (ImageView) convertView .findViewById(R.id.p_store_item_song); ImageView daoImg = (ImageView) convertView .findViewById(R.id.p_store_item_dao); ImageView vImg = (ImageView) convertView .findViewById(R.id.p_store_item_v); ImageView hoursImg = (ImageView) convertView .findViewById(R.id.p_store_item_24); LinearLayout drugstore_location_btn = (LinearLayout) convertView .findViewById(R.id.drugstore_location_btn); LinearLayout drugstore_phonecall_btn = (LinearLayout) convertView .findViewById(R.id.drugstore_phonecall_btn); Map<String, String> itemmap = drugstore_list.get(position); storetitle.setText(itemmap.get("drugstorename")); String nowprice = itemmap.get("nowprice"); if (nowprice == null || nowprice.equals("") || nowprice.equals("0.00") || nowprice.equals("0")) { drugprice.setText("δ֪"); } else { drugprice.setText("��" + nowprice); } String tel = itemmap.get("tel"); String mobile = itemmap.get("mobile"); String distance = itemmap.get("distance"); String ishc = itemmap.get("ishc");// �� String istel = itemmap.get("istel");// �绰���� String isdoor = itemmap.get("isdoor");// �ͻ����� String iscod = itemmap.get("iscod");// �������� String isv = itemmap.get("ismember");// V String ishours = itemmap.get("is24hour");// 24 if (Integer.parseInt(ishc) == 1) { baoImg.setVisibility(View.VISIBLE); } else { baoImg.setVisibility(View.GONE); } if (Integer.parseInt(isdoor) == 1) { songImg.setVisibility(View.VISIBLE); } else { songImg.setVisibility(View.GONE); } if (Integer.parseInt(iscod) == 1) { daoImg.setVisibility(View.VISIBLE); } else { daoImg.setVisibility(View.GONE); } if (Integer.parseInt(isv) == 1) { vImg.setVisibility(View.VISIBLE); } else { vImg.setVisibility(View.GONE); } if (Integer.parseInt(ishours) == 1) { hoursImg.setVisibility(View.VISIBLE); } else { hoursImg.setVisibility(View.GONE); } // p_store_item_distance if (!distance.equals("")) { float distan = Util.round(Float.parseFloat(distance), 2); if (distan > 1) { distance = distan + "����"; } else { distance = distan * 1000 + "��"; } } distancetxt.setText(distance); if (!tel.equals("") || !mobile.equals("")) { drugstore_phonecall_btn.setVisibility(View.VISIBLE); if (!tel.equals("")) { drugstore_phonecall_btn.setTag(tel); } else { drugstore_phonecall_btn.setTag(mobile); } } else { drugstore_phonecall_btn.setVisibility(View.GONE); } /* * if(!tel.equals("")||!mobile.equals("")) { if(!tel.equals("")) { * callphone.setTag(tel); } else { callphone.setTag(mobile); } * * } else if(tel.equals("")&mobile.equals("")) { * //callphone.setTag(tel); callphone.setVisibility(View.GONE); * * } */ //callphone.setOnClickListener(onClickListener); drugstore_phonecall_btn.setOnTouchListener(new setOnPressed()); drugstore_phonecall_btn.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO �µ簴ť�����ò��Ž��� String callNum = v.getTag().toString(); Intent intent = new Intent(Intent.ACTION_DIAL, Uri.parse("tel:" + callNum)); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); ((Activity) _context).startActivity(intent); } }); drugstore_location_btn.setOnTouchListener(new setOnPressed()); drugstore_location_btn.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO ��λҩ�굽��ͼ Bundle innerbundle = new Bundle(); innerbundle.putString("drugstoreid", drugstore_list.get(tposition) .get("drugstoreid")); innerbundle.putString("drugid", _drugid); innerbundle.putString("loadmode", LoadMode.PositionByDrug.toString()); innerbundle.putString("returnmode", ReturnMode.Normal.toString()); Intent mapintent = new Intent().setClass(_context, DrugStoreMap.class); mapintent.putExtras(innerbundle); ((Activity) _context).startActivity(mapintent); } }); return convertView; } public void addItem(Map<String, String> item) { drugstore_list.add(item); } /** * ���ò��������OnPress�¼����� */ private final class setOnPressed implements OnTouchListener { @Override public boolean onTouch(View v, MotionEvent event) { // TODO Auto-generated method stub switch (event.getAction()) { case MotionEvent.ACTION_DOWN: v.setPressed(true); break; /* * case MotionEvent.ACTION_UP: v.setPressed(false); break; */ } return false; } } }