购物车、全选
时间:2019-03-19
本文章向大家介绍购物车、全选,主要包括购物车、全选使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
public class GouActivity extends Activity {
private ListView gou_listview;
private TextView title;
private CheckBox check_all;
private TextView zong;
private Button money;
private List<Shopping> list;
private MyBase adapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_gou);
//初始化组件
title = (TextView) findViewById(R.id.text_title);
gou_listview = (ListView) findViewById(R.id.gou_ListView);
check_all = (CheckBox) findViewById(R.id.check_all);
zong = (TextView) findViewById(R.id.text_zong);
money = (Button) findViewById(R.id.btn_money);
//更改标题
title.setText("购物车");
//接收传值
Intent intent = getIntent();
list = (List<Shopping>) intent.getSerializableExtra("list");
//设置适配器
adapter = new MyBase();
gou_listview.setAdapter(adapter);
//计算总价
getTotal();
//全选
check_all.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
for (int i = 0; i < list.size(); i++) {
list.get(i).setCheck(isChecked);
}
//重新计算总价
getTotal();
//刷新适配器
adapter.notifyDataSetChanged();
}
});
}
private void getTotal() {
double x=0;
for (int i = 0; i < list.size(); i++) {
if(list.get(i).isCheck()){
double price = Double.parseDouble(list.get(i).getPrice());
x+=price;
}
}
zong.setText("总价:"+x+"元");
}
class MyBase extends BaseAdapter{
@Override
public int getCount() {
// TODO Auto-generated method stub
return list.size();
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return list.get(position);
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
final ViewHolder holder;
if (convertView == null) {
convertView = View.inflate(GouActivity.this, R.layout.shopp_myase, null);
holder = new ViewHolder();
holder.imageView = (ImageView) convertView.findViewById(R.id.ImageView);
holder.text_name = (TextView) convertView.findViewById(R.id.text_name);
holder.text_price = (TextView) convertView.findViewById(R.id.text_price);
holder.box = (CheckBox) convertView.findViewById(R.id.CheckBox);
convertView.setTag(holder);
}else {
holder = (ViewHolder) convertView.getTag();
}
//赋值
holder.imageView.setImageResource(list.get(position).getImage());
holder.text_name.setText("商品名称:"+list.get(position).getName());
holder.text_price.setText("商品价格:"+list.get(position).getPrice());
holder.box.setChecked(list.get(position).isCheck());
//勾选条目内的复选框
holder.box.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
boolean checked = holder.box.isChecked();
list.get(position).setCheck(checked);
//重新调用计算总价方法
getTotal();
}
});
return convertView;
}
class ViewHolder{
ImageView imageView;
TextView text_name,text_price;
CheckBox box;
}
}
}
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- axios 进行同步请求(async+await)
- Axios 各种请求方式传递参数格式
- axios POST提交数据的三种请求方式写法
- Json对象和Json字符串的区别
- 合并/拆分 Excel?Python、VBA轻松自动化
- (数据科学学习手札96)在geopandas中叠加在线地图
- 秋天的第一杯奶茶该买哪家?Python 爬取美团网红奶茶店告诉你
- AttributeError: NoneType object has no attribute‘’
- tf.control_dependencies(control_inputs)
- tf.get_collection()
- tf.reduce_mean()
- tf.placeholder函数说明
- tf.sigmoid()用法
- Latex 表格过大(或过小)的调整方法
- Latex设置字体大小及表格中的文字大小等