package com.bwie.test.fragment;
import java.text.DecimalFormat;
import java.util.LinkedList;
import java.util.List;
import com.bwie.test.R;
import com.bwie.test.SharedPreferences.MySharedPreferences;
import com.bwie.test.applition.ImageLoaderUtils;
import com.bwie.test.bean.UserBean;
import com.bwie.test.helper.MyDBHelper1;
import com.bwie.test.people.DengActivity;
import com.bwie.test.shopcar.ShopjiesuanActivity;
import com.bwie.test.utils.NetUtils;
import com.nostra13.universalimageloader.core.DisplayImageOptions;
import com.nostra13.universalimageloader.core.ImageLoader;
import android.app.AlertDialog;
import android.app.Dialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.view.animation.Animation;
import android.view.animation.Animation.AnimationListener;
import android.view.animation.AnimationUtils;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemLongClickListener;
import android.widget.BaseAdapter;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.RelativeLayout;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;
public class Shopcar_Fragment extends Fragment implements OnClickListener {
private View view;
private Context context;
private ImageView anim;
private TextView head;
private ImageView back1;
private TextView head1;
private ImageView back;
private List<UserBean> list;
private Gridadapter1 adapter;
private ListView listView;
private MyDBHelper1 helper1;
private double zongmoney = 0;
private TextView bian;
private Button jiesuan;
private Button delete;
private TextView wan;
private Intent intent;
private CheckBox check1;
private TextView zongjia;
@Override
public void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
context = this.getActivity();
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
boolean connectionToInternet = NetUtils.isConnectingToInternet(context);
if (connectionToInternet) {
helper1 = new MyDBHelper1(getActivity());
list = helper1.querylist();
//判断数据库是否有数据
boolean checked=MySharedPreferences.getboolean1(getActivity());
if (checked) {
if (list.size() == 0) {
view = View.inflate(context, R.layout.shopcar_fragment, null);
initview();
head.setText("购物车");
back.setVisibility(View.GONE);
} else {
view = View.inflate(getActivity(), R.layout.shopcar1, null);
Initview();
head1.setText("购物车");
back1.setVisibility(View.GONE);
// 获取数据库
Setadapter();
//长按删除
Onclickliong();
}
}else {
intent=new Intent(getActivity(),DengActivity.class);
startActivity(intent);
}
} else {
view = View.inflate(getActivity(), R.layout.internet, null);
anim = (ImageView) view.findViewById(R.id.loading);
Animation animation = AnimationUtils.loadAnimation(context,
R.anim.refresh);
anim.startAnimation(animation);
animation.setAnimationListener(new AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {
anim.setVisibility(View.VISIBLE);
}
@Override
public void onAnimationRepeat(Animation animation) {
// TODO Auto-generated method stub
}
@Override
public void onAnimationEnd(Animation animation) {
anim.setVisibility(View.GONE);
}
});
}
return view;
}
private void Onclickliong() {
listView.setOnItemLongClickListener(new OnItemLongClickListener() {
@Override
public boolean onItemLongClick(AdapterView<?> arg0, View arg1,
final int arg2, long arg3) {
Dialog alertDialog = new AlertDialog.Builder(getActivity()).
setTitle("确定删除?").
setMessage("您确定删除该条信息吗?").
setPositiveButton("确定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
helper1.deleteUser(list.get(arg2).getId());
List<UserBean> data1 = helper1.querylist();
list.clear();
list.addAll(data1);
adapter = new Gridadapter1(getActivity(), list);
listView.setAdapter(adapter);
adapter.notifyDataSetChanged();
}
}).
setNegativeButton("取消", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
}
}).
create();
alertDialog.show();
return false;
}
});
}
/**
* 查询数据库,并分配数据
*/
private void Setadapter() {
if (adapter == null) {
adapter = new Gridadapter1(getActivity(), list);
listView.setAdapter(adapter);
} else {
adapter.notifyDataSetChanged();
}
}
private void Initview() {
head1 = (TextView) view.findViewById(R.id.head);
check1 = (CheckBox) view.findViewById(R.id.checkBox1);
wan = (TextView) view.findViewById(R.id.wan);
zongjia = (TextView) view.findViewById(R.id.ttt1);
jiesuan = (Button) view.findViewById(R.id.jiesuan);
delete = (Button) view.findViewById(R.id.shanchu);
back1 = (ImageView) view.findViewById(R.id.back);
listView = (ListView) view.findViewById(R.id.listview1);
bian = (TextView) view.findViewById(R.id.bian);
bian.setOnClickListener(this);
jiesuan.setOnClickListener(this);
wan.setOnClickListener(this);
delete.setOnClickListener(this);
check1.setOnClickListener(this);
}
private void initview() {
head = (TextView) view.findViewById(R.id.head);
back = (ImageView) view.findViewById(R.id.back);
}
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.bian:
adapter.shuzhi(2);
wan.setVisibility(View.VISIBLE);
bian.setVisibility(View.GONE);
jiesuan.setVisibility(View.GONE);
delete.setVisibility(View.VISIBLE);
break;
case R.id.wan:
bian.setVisibility(View.VISIBLE);
wan.setVisibility(View.GONE);
delete.setVisibility(View.GONE);
jiesuan.setVisibility(View.VISIBLE);
adapter.shuzhi(1);
for (int i = 0; i < adapter.getLink().size(); i++) {
helper1.Update(list.get(i).getName(), adapter.getLink().get(i));
}
// 查询数据库拿到最新数据,设置到adapter
List<UserBean> data = helper1.querylist();
list.clear();
list.addAll(data);
adapter = new Gridadapter1(getActivity(), list);
listView.setAdapter(adapter);
adapter.notifyDataSetChanged();
break;
case R.id.jiesuan:
intent = new Intent(getActivity(), ShopjiesuanActivity.class);
intent.putExtra("name", list.get(0).getName());
intent.putExtra("image", list.get(0).getImage());
intent.putExtra("price", list.get(0).getPrice());
intent.putExtra("num", list.get(0).getNum() + "");
startActivity(intent);
break;
case R.id.checkBox1:
boolean flag = check1.isChecked();
if (flag == true) {
double zj = 0.0f;
for (int i = 0; i < adapter.getSelect().size(); i++) {
adapter.getSelect().set(i, flag);
}
for (int i = 0; i < adapter.getSelect().size(); i++) {
if (adapter.getSelect().get(i) == true) {
zj = (adapter.linkp.get(i)) * (adapter.link.get(i));
zongmoney = zongmoney + zj;
} else {
zj = (adapter.linkp.get(i)) * (adapter.link.get(i));
zongmoney = zongmoney - zj;
}
}
// 点击全选之后把总价赋值给适配器
adapter.mm = zongmoney;
if (zongmoney > 0) {
zongjia.setText("总计:¥"
+ new DecimalFormat("#0.00").format(zongmoney));
} else {
zongjia.setText("总计:¥"
+ new DecimalFormat("#0.00").format(0));
}
} else {
boolean selects = check1.isChecked();
for (int i = 0; i < adapter.getSelect().size(); i++) {
adapter.getSelect().set(i, selects);
}
zongmoney = 0;
adapter.mm = zongmoney;
zongjia.setText("总计:¥"
+ new DecimalFormat("#0.00").format(zongmoney));
}
adapter.notifyDataSetChanged();
break;
case R.id.shanchu:
for (int i = 0; i < adapter.getLink().size(); i++) {
helper1.deleteUser(adapter.getLink().get(i));
}
// 查询数据库拿到最新数据,设置到adapter
List<UserBean> data1 = helper1.querylist();
list.clear();
list.addAll(data1);
adapter = new Gridadapter1(getActivity(), list);
listView.setAdapter(adapter);
adapter.notifyDataSetChanged();
break;
default:
break;
}
}
class Gridadapter1 extends BaseAdapter {
Context context;
List<UserBean> list;
public double mm = 0.0f;
private LinkedList<Integer> link = new LinkedList<Integer>();
private LinkedList<Integer> link1 = new LinkedList<Integer>();
private LinkedList<Double> linkp = new LinkedList<Double>();
private LinkedList<Boolean> linkedList = new LinkedList<Boolean>();
private ViewHolder holder;
private DisplayImageOptions initOptions;
private int n;
public void shuzhi(int aa) {
n = aa;
}
public Gridadapter1(Context context, List<UserBean> list) {
super();
this.context = context;
this.list = list;
// 初始化
for (int i = 0; i < list.size(); i++) {
getSelect().add(false);
}
// 初始化
for (int i = 0; i < list.size(); i++) {
link.add(Integer.parseInt(list.get(i).getNum()));
}
// 初始化
for (int i = 0; i < list.size(); i++) {
link1.add(list.get(i).getId());
}
for (int i = 0; i < list.size(); i++) {
linkp.add(Double.parseDouble(list.get(i).getPrice()));
}
}
public LinkedList<Integer> getLink() {
return link;
}
public LinkedList<Integer> getLink1() {
return link1;
}
public List<Boolean> getSelect() {
return linkedList;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return list.size();
}
@Override
public Object getItem(int arg0) {
// TODO Auto-generated method stub
return list.get(arg0);
}
@Override
public long getItemId(int arg0) {
// TODO Auto-generated method stub
return arg0;
}
@Override
public View getView(final int arg0, View arg1, ViewGroup arg2) {
if (arg1 == null) {
initOptions = ImageLoaderUtils.initOptions();
arg1 = View.inflate(context, R.layout.shoppingcar_item1, null);
holder = new ViewHolder();
holder.t1 = (TextView) arg1.findViewById(R.id.textView1);
holder.t2 = (TextView) arg1.findViewById(R.id.textView2);
holder.num = (TextView) arg1.findViewById(R.id.num);
holder.jia = (Button) arg1.findViewById(R.id.jia);
holder.jian = (Button) arg1.findViewById(R.id.jian);
holder.check = (CheckBox) arg1.findViewById(R.id.checkBox1);
holder.rr = (RelativeLayout) arg1.findViewById(R.id.shu11);
holder.t3 = (TextView) arg1.findViewById(R.id.textView3);
holder.img = (ImageView) arg1.findViewById(R.id.imageView1);
arg1.setTag(holder);
} else {
holder = (ViewHolder) arg1.getTag();
}
if (n == 2) {
holder.rr.setVisibility(View.VISIBLE);
holder.t3.setVisibility(View.INVISIBLE);
} else {
holder.rr.setVisibility(View.GONE);
holder.t3.setVisibility(View.VISIBLE);
}
holder.t1.setText(list.get(arg0).getName());
holder.t2.setText("¥" + list.get(arg0).getPrice());
holder.t3.setText("数量:" + list.get(arg0).getNum());
ImageLoader.getInstance().displayImage(list.get(arg0).getImage(),
holder.img, initOptions);
// 不能用onCheckChangedListner()复用的时候
holder.check.setChecked(linkedList.get(arg0));
holder.check.setOnClickListener(new OnClickListener() {
private double zj = 0.0f;
@Override
public void onClick(View v) {
linkedList.set(arg0, !linkedList.get(arg0));
// linkedList集合中当前角标的状态
if (linkedList.get(arg0) == true) {
// 状态为true,link所存的商品数量*传入集合中的商品价格(角标相同,所以一一对应)
zj = (linkp.get(arg0)) * (adapter.link.get(arg0));
// 赋值给定义的全局变量(也就是总价)
mm = mm + zj;
} else {
zj = (linkp.get(arg0)) * (adapter.link.get(arg0));
mm = mm - zj;
}
// 把经过计算的总价set到控件
if (mm > 0) {
zongjia.setText("总计:¥"
+ new DecimalFormat("#0.00").format(mm));
} else {
zongjia.setText("总计:¥"
+ new DecimalFormat("#0.00").format(0));
}
// 判断:如果linklist里包含false,全选不选中,否则(都是true的情况下)选中全选。
if (linkedList.contains(false)) {
check1.setChecked(false);
zongmoney = 0;
} else {
check1.setChecked(true);
zongmoney = mm;
}
notifyDataSetChanged();
}
});
holder.num.setText(link.get(arg0) + "");
holder.jia.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if (link.get(arg0) >= 5) {
Toast.makeText(getActivity(), "本商品限购5件哟!", 0).show();
} else {
link.set(arg0, (link.get(arg0) + 1));
holder.num.setText(link.get(arg0) + "");
}
notifyDataSetChanged();
}
});
holder.jian.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if (link.get(arg0) <= 1) {
Toast.makeText(getActivity(), "商品不能少于1件哟!", 0).show();
} else {
link.set(arg0, (link.get(arg0) - 1));
holder.num.setText(link.get(arg0) + "");
}
notifyDataSetChanged();
}
});
return arg1;
}
class ViewHolder {
TextView t1;
TextView t2;
CheckBox check;
TextView t3;
TextView num;
Button jia;
Button jian;
RelativeLayout rr;
ImageView img;
}
}
}
import java.text.DecimalFormat;
import java.util.LinkedList;
import java.util.List;
import com.bwie.test.R;
import com.bwie.test.SharedPreferences.MySharedPreferences;
import com.bwie.test.applition.ImageLoaderUtils;
import com.bwie.test.bean.UserBean;
import com.bwie.test.helper.MyDBHelper1;
import com.bwie.test.people.DengActivity;
import com.bwie.test.shopcar.ShopjiesuanActivity;
import com.bwie.test.utils.NetUtils;
import com.nostra13.universalimageloader.core.DisplayImageOptions;
import com.nostra13.universalimageloader.core.ImageLoader;
import android.app.AlertDialog;
import android.app.Dialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.view.animation.Animation;
import android.view.animation.Animation.AnimationListener;
import android.view.animation.AnimationUtils;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemLongClickListener;
import android.widget.BaseAdapter;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.RelativeLayout;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;
public class Shopcar_Fragment extends Fragment implements OnClickListener {
private View view;
private Context context;
private ImageView anim;
private TextView head;
private ImageView back1;
private TextView head1;
private ImageView back;
private List<UserBean> list;
private Gridadapter1 adapter;
private ListView listView;
private MyDBHelper1 helper1;
private double zongmoney = 0;
private TextView bian;
private Button jiesuan;
private Button delete;
private TextView wan;
private Intent intent;
private CheckBox check1;
private TextView zongjia;
@Override
public void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
context = this.getActivity();
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
boolean connectionToInternet = NetUtils.isConnectingToInternet(context);
if (connectionToInternet) {
helper1 = new MyDBHelper1(getActivity());
list = helper1.querylist();
//判断数据库是否有数据
boolean checked=MySharedPreferences.getboolean1(getActivity());
if (checked) {
if (list.size() == 0) {
view = View.inflate(context, R.layout.shopcar_fragment, null);
initview();
head.setText("购物车");
back.setVisibility(View.GONE);
} else {
view = View.inflate(getActivity(), R.layout.shopcar1, null);
Initview();
head1.setText("购物车");
back1.setVisibility(View.GONE);
// 获取数据库
Setadapter();
//长按删除
Onclickliong();
}
}else {
intent=new Intent(getActivity(),DengActivity.class);
startActivity(intent);
}
} else {
view = View.inflate(getActivity(), R.layout.internet, null);
anim = (ImageView) view.findViewById(R.id.loading);
Animation animation = AnimationUtils.loadAnimation(context,
R.anim.refresh);
anim.startAnimation(animation);
animation.setAnimationListener(new AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {
anim.setVisibility(View.VISIBLE);
}
@Override
public void onAnimationRepeat(Animation animation) {
// TODO Auto-generated method stub
}
@Override
public void onAnimationEnd(Animation animation) {
anim.setVisibility(View.GONE);
}
});
}
return view;
}
private void Onclickliong() {
listView.setOnItemLongClickListener(new OnItemLongClickListener() {
@Override
public boolean onItemLongClick(AdapterView<?> arg0, View arg1,
final int arg2, long arg3) {
Dialog alertDialog = new AlertDialog.Builder(getActivity()).
setTitle("确定删除?").
setMessage("您确定删除该条信息吗?").
setPositiveButton("确定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
helper1.deleteUser(list.get(arg2).getId());
List<UserBean> data1 = helper1.querylist();
list.clear();
list.addAll(data1);
adapter = new Gridadapter1(getActivity(), list);
listView.setAdapter(adapter);
adapter.notifyDataSetChanged();
}
}).
setNegativeButton("取消", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
}
}).
create();
alertDialog.show();
return false;
}
});
}
/**
* 查询数据库,并分配数据
*/
private void Setadapter() {
if (adapter == null) {
adapter = new Gridadapter1(getActivity(), list);
listView.setAdapter(adapter);
} else {
adapter.notifyDataSetChanged();
}
}
private void Initview() {
head1 = (TextView) view.findViewById(R.id.head);
check1 = (CheckBox) view.findViewById(R.id.checkBox1);
wan = (TextView) view.findViewById(R.id.wan);
zongjia = (TextView) view.findViewById(R.id.ttt1);
jiesuan = (Button) view.findViewById(R.id.jiesuan);
delete = (Button) view.findViewById(R.id.shanchu);
back1 = (ImageView) view.findViewById(R.id.back);
listView = (ListView) view.findViewById(R.id.listview1);
bian = (TextView) view.findViewById(R.id.bian);
bian.setOnClickListener(this);
jiesuan.setOnClickListener(this);
wan.setOnClickListener(this);
delete.setOnClickListener(this);
check1.setOnClickListener(this);
}
private void initview() {
head = (TextView) view.findViewById(R.id.head);
back = (ImageView) view.findViewById(R.id.back);
}
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.bian:
adapter.shuzhi(2);
wan.setVisibility(View.VISIBLE);
bian.setVisibility(View.GONE);
jiesuan.setVisibility(View.GONE);
delete.setVisibility(View.VISIBLE);
break;
case R.id.wan:
bian.setVisibility(View.VISIBLE);
wan.setVisibility(View.GONE);
delete.setVisibility(View.GONE);
jiesuan.setVisibility(View.VISIBLE);
adapter.shuzhi(1);
for (int i = 0; i < adapter.getLink().size(); i++) {
helper1.Update(list.get(i).getName(), adapter.getLink().get(i));
}
// 查询数据库拿到最新数据,设置到adapter
List<UserBean> data = helper1.querylist();
list.clear();
list.addAll(data);
adapter = new Gridadapter1(getActivity(), list);
listView.setAdapter(adapter);
adapter.notifyDataSetChanged();
break;
case R.id.jiesuan:
intent = new Intent(getActivity(), ShopjiesuanActivity.class);
intent.putExtra("name", list.get(0).getName());
intent.putExtra("image", list.get(0).getImage());
intent.putExtra("price", list.get(0).getPrice());
intent.putExtra("num", list.get(0).getNum() + "");
startActivity(intent);
break;
case R.id.checkBox1:
boolean flag = check1.isChecked();
if (flag == true) {
double zj = 0.0f;
for (int i = 0; i < adapter.getSelect().size(); i++) {
adapter.getSelect().set(i, flag);
}
for (int i = 0; i < adapter.getSelect().size(); i++) {
if (adapter.getSelect().get(i) == true) {
zj = (adapter.linkp.get(i)) * (adapter.link.get(i));
zongmoney = zongmoney + zj;
} else {
zj = (adapter.linkp.get(i)) * (adapter.link.get(i));
zongmoney = zongmoney - zj;
}
}
// 点击全选之后把总价赋值给适配器
adapter.mm = zongmoney;
if (zongmoney > 0) {
zongjia.setText("总计:¥"
+ new DecimalFormat("#0.00").format(zongmoney));
} else {
zongjia.setText("总计:¥"
+ new DecimalFormat("#0.00").format(0));
}
} else {
boolean selects = check1.isChecked();
for (int i = 0; i < adapter.getSelect().size(); i++) {
adapter.getSelect().set(i, selects);
}
zongmoney = 0;
adapter.mm = zongmoney;
zongjia.setText("总计:¥"
+ new DecimalFormat("#0.00").format(zongmoney));
}
adapter.notifyDataSetChanged();
break;
case R.id.shanchu:
for (int i = 0; i < adapter.getLink().size(); i++) {
helper1.deleteUser(adapter.getLink().get(i));
}
// 查询数据库拿到最新数据,设置到adapter
List<UserBean> data1 = helper1.querylist();
list.clear();
list.addAll(data1);
adapter = new Gridadapter1(getActivity(), list);
listView.setAdapter(adapter);
adapter.notifyDataSetChanged();
break;
default:
break;
}
}
class Gridadapter1 extends BaseAdapter {
Context context;
List<UserBean> list;
public double mm = 0.0f;
private LinkedList<Integer> link = new LinkedList<Integer>();
private LinkedList<Integer> link1 = new LinkedList<Integer>();
private LinkedList<Double> linkp = new LinkedList<Double>();
private LinkedList<Boolean> linkedList = new LinkedList<Boolean>();
private ViewHolder holder;
private DisplayImageOptions initOptions;
private int n;
public void shuzhi(int aa) {
n = aa;
}
public Gridadapter1(Context context, List<UserBean> list) {
super();
this.context = context;
this.list = list;
// 初始化
for (int i = 0; i < list.size(); i++) {
getSelect().add(false);
}
// 初始化
for (int i = 0; i < list.size(); i++) {
link.add(Integer.parseInt(list.get(i).getNum()));
}
// 初始化
for (int i = 0; i < list.size(); i++) {
link1.add(list.get(i).getId());
}
for (int i = 0; i < list.size(); i++) {
linkp.add(Double.parseDouble(list.get(i).getPrice()));
}
}
public LinkedList<Integer> getLink() {
return link;
}
public LinkedList<Integer> getLink1() {
return link1;
}
public List<Boolean> getSelect() {
return linkedList;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return list.size();
}
@Override
public Object getItem(int arg0) {
// TODO Auto-generated method stub
return list.get(arg0);
}
@Override
public long getItemId(int arg0) {
// TODO Auto-generated method stub
return arg0;
}
@Override
public View getView(final int arg0, View arg1, ViewGroup arg2) {
if (arg1 == null) {
initOptions = ImageLoaderUtils.initOptions();
arg1 = View.inflate(context, R.layout.shoppingcar_item1, null);
holder = new ViewHolder();
holder.t1 = (TextView) arg1.findViewById(R.id.textView1);
holder.t2 = (TextView) arg1.findViewById(R.id.textView2);
holder.num = (TextView) arg1.findViewById(R.id.num);
holder.jia = (Button) arg1.findViewById(R.id.jia);
holder.jian = (Button) arg1.findViewById(R.id.jian);
holder.check = (CheckBox) arg1.findViewById(R.id.checkBox1);
holder.rr = (RelativeLayout) arg1.findViewById(R.id.shu11);
holder.t3 = (TextView) arg1.findViewById(R.id.textView3);
holder.img = (ImageView) arg1.findViewById(R.id.imageView1);
arg1.setTag(holder);
} else {
holder = (ViewHolder) arg1.getTag();
}
if (n == 2) {
holder.rr.setVisibility(View.VISIBLE);
holder.t3.setVisibility(View.INVISIBLE);
} else {
holder.rr.setVisibility(View.GONE);
holder.t3.setVisibility(View.VISIBLE);
}
holder.t1.setText(list.get(arg0).getName());
holder.t2.setText("¥" + list.get(arg0).getPrice());
holder.t3.setText("数量:" + list.get(arg0).getNum());
ImageLoader.getInstance().displayImage(list.get(arg0).getImage(),
holder.img, initOptions);
// 不能用onCheckChangedListner()复用的时候
holder.check.setChecked(linkedList.get(arg0));
holder.check.setOnClickListener(new OnClickListener() {
private double zj = 0.0f;
@Override
public void onClick(View v) {
linkedList.set(arg0, !linkedList.get(arg0));
// linkedList集合中当前角标的状态
if (linkedList.get(arg0) == true) {
// 状态为true,link所存的商品数量*传入集合中的商品价格(角标相同,所以一一对应)
zj = (linkp.get(arg0)) * (adapter.link.get(arg0));
// 赋值给定义的全局变量(也就是总价)
mm = mm + zj;
} else {
zj = (linkp.get(arg0)) * (adapter.link.get(arg0));
mm = mm - zj;
}
// 把经过计算的总价set到控件
if (mm > 0) {
zongjia.setText("总计:¥"
+ new DecimalFormat("#0.00").format(mm));
} else {
zongjia.setText("总计:¥"
+ new DecimalFormat("#0.00").format(0));
}
// 判断:如果linklist里包含false,全选不选中,否则(都是true的情况下)选中全选。
if (linkedList.contains(false)) {
check1.setChecked(false);
zongmoney = 0;
} else {
check1.setChecked(true);
zongmoney = mm;
}
notifyDataSetChanged();
}
});
holder.num.setText(link.get(arg0) + "");
holder.jia.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if (link.get(arg0) >= 5) {
Toast.makeText(getActivity(), "本商品限购5件哟!", 0).show();
} else {
link.set(arg0, (link.get(arg0) + 1));
holder.num.setText(link.get(arg0) + "");
}
notifyDataSetChanged();
}
});
holder.jian.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if (link.get(arg0) <= 1) {
Toast.makeText(getActivity(), "商品不能少于1件哟!", 0).show();
} else {
link.set(arg0, (link.get(arg0) - 1));
holder.num.setText(link.get(arg0) + "");
}
notifyDataSetChanged();
}
});
return arg1;
}
class ViewHolder {
TextView t1;
TextView t2;
CheckBox check;
TextView t3;
TextView num;
Button jia;
Button jian;
RelativeLayout rr;
ImageView img;
}
}
}