package com.txsc.adapter;
import java.util.ArrayList;
import java.util.List;
import android.annotation.SuppressLint;
import android.content.Context;
import android.content.Intent;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;
import com.txsc.R;
import com.txsc.activity.User_LoginAty;
import com.txsc.bean.CarListBean.googsListBean;
import com.txsc.utils.ImageUtil;
import com.txsc.utils.SPUtils;
import com.txsc.utils.TextUtils;
import com.txsc.utils.ToastUtil;
import com.txsc.view.CollectPopWindow2;
import com.txsc.view.CollectPopWindow2.OnItemClickListener;
@SuppressLint("ShowToast")
/**
* 购物车listadapter
* @author linshao
*
* @data 2015-5-14 下午12:38:15
*
*/
public class Adapter_ListView_cart extends BaseAdapter {
private Context context;
private List<googsListBean> mList = new ArrayList<googsListBean>();
private onClick listener;
private CollectPopWindow2 pop;
private String id, attr_id;
public Adapter_ListView_cart(Context context, List<googsListBean> arrayList) {
this.context = context;
this.mList = arrayList;
pop = new CollectPopWindow2(context);
}
public Adapter_ListView_cart(Context context) {
this.context = context;
}
@Override
public int getCount() {
return (mList != null && mList.size() == 0) ? 0 : mList.size();
}
@Override
public Object getItem(int arg0) {
return mList.get(arg0);
}
@Override
public long getItemId(int arg0) {
return arg0;
}
@Override
public View getView(final int position, View currentView, ViewGroup arg2) {
HolderView holderView = null;
if (currentView == null) {
holderView = new HolderView();
currentView = LayoutInflater.from(context).inflate(
R.layout.adapter_listview_cart, null);
holderView.im_pic = (ImageView) currentView
.findViewById(R.id.iv_adapter_list_pic);
holderView.tv_name = (TextView) currentView
.findViewById(R.id.tv_name);
holderView.tv_price = (TextView) currentView
.findViewById(R.id.tv_price);
holderView.tv_num = (TextView) currentView
.findViewById(R.id.tv_num);
holderView.tv_del = (TextView) currentView
.findViewById(R.id.tv_del);
currentView.setTag(holderView);
} else {
holderView = (HolderView) currentView.getTag();
}
if (mList.size() != 0) {
final googsListBean bean = mList.get(position);
holderView.tv_name.setText(bean.getGoods_name());
holderView.tv_num.setText("x" + bean.getGoods_count());
holderView.tv_price.setText("¥:" + bean.getTotal_price());
ImageUtil.loadImage(holderView.im_pic, bean.getGoods_thumb());
holderView.tv_del.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
listener.delclick(bean.getGoods_id(),
bean.getGoods_attr_id());
}
});
holderView.tv_num.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
pop.showAsDropDown(v);
id = bean.getGoods_id();
attr_id = bean.getGoods_attr_id();
}
});
pop.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onClickOKPop(int defaultNum) {
if (TextUtils.isBlank(SPUtils.getUid(context))) {
ToastUtil.show(context, "抱歉,您还未登录,请登录", 500);
Intent intent = new Intent(context, User_LoginAty.class);
context.startActivity(intent);
return;
}
listener.changeclick(id, attr_id, defaultNum);
}
@Override
public void onCanclePop() {
}
});
}
return currentView;
}
public interface onClick {
public void delclick(String id, String attr_Id);
public void changeclick(String id, String attr_Id, int num);
}
public void setOnClick(onClick listener) {
this.listener = listener;
}
public void addData(List<googsListBean> beanList) {
this.mList.addAll(beanList);
}
public void clearData() {
this.mList.clear();
}
public class HolderView {
private TextView tv_name, tv_price, tv_num, tv_del;
private ImageView im_pic;
}
}