20.购物车商品价格的总和(里面有一些功能没有实现,创建textview布局对象,然后for()遍历数据求和)
来源:互联网 发布:centos设置ip地址 编辑:程序博客网 时间:2024/06/14 11:02
效果图:
在CartFragment中创建textview的对象,然后在CartAdapter适配器中的构造函数,实现textview的赋值,使用for遍历
代码:
CartFragment.class
package zuo.com.ui.fragment;import android.content.Context;import android.os.Bundle;import android.support.annotation.Nullable;import android.support.v4.app.Fragment;import android.support.v7.widget.LinearLayoutManager;import android.support.v7.widget.RecyclerView;import android.util.Log;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;import android.widget.TextView;import java.util.ArrayList;import java.util.List;import zuo.com.ui.HomeActivity;import zuo.com.ui.MainActivity;import zuo.com.ui.R;import zuo.com.ui.adapter.CartAdapter;import zuo.com.ui.adapter.HotGoodsAdapter;import zuo.com.ui.bean.ShoppingCart;import zuo.com.ui.util.CartProvider;/** * Created by Administrator on 2016/10/6. */public class CartFragment extends Fragment { private LayoutInflater layoutInflater; private CartProvider cartProvider; private CartAdapter cartAdapter; private RecyclerView recyclerView; private TextView textView; @Nullable @Override public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { layoutInflater=LayoutInflater.from(getContext()); cartProvider=new CartProvider(getContext()); View view=layoutInflater.inflate(R.layout.fragment_cart,container,false); recyclerView= (RecyclerView) view.findViewById(R.id.recycler_view); textView= (TextView) view.findViewById(R.id.txt_total); showData(); return view; } //初始化数据 private void showData(){ List<ShoppingCart> carts=HotGoodsAdapter.hashMap.get("123"); if(carts!=null) { Log.d("cart", carts.get(0).getName()); cartAdapter = new CartAdapter(carts,textView); recyclerView.setAdapter(cartAdapter); recyclerView.setLayoutManager(new LinearLayoutManager(getContext())); }else{ cartAdapter = new CartAdapter(carts,textView); recyclerView.setAdapter(cartAdapter); recyclerView.setLayoutManager(new LinearLayoutManager(getContext())); } }}
CartAdapter:
package zuo.com.ui.adapter;import android.net.Uri;import android.support.v7.widget.RecyclerView;import android.util.Log;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;import android.widget.CheckBox;import android.widget.TextView;import com.facebook.drawee.backends.pipeline.Fresco;import com.facebook.drawee.backends.pipeline.PipelineDraweeController;import com.facebook.drawee.view.SimpleDraweeView;import com.facebook.imagepipeline.request.ImageRequest;import com.facebook.imagepipeline.request.ImageRequestBuilder;import java.util.List;import zuo.com.ui.R;import zuo.com.ui.bean.ShoppingCart;import zuo.com.ui.number.NumberAddSubView;import zuo.com.ui.util.CartProvider;/** * Created by Administrator on 2016/10/17. */public class CartAdapter extends RecyclerView.Adapter<CartAdapter.ViewHolder> { private LayoutInflater layoutInflater; private List<ShoppingCart> carts; private TextView textView; float sum=0; public CartAdapter(List<ShoppingCart> carts,TextView textView){ this.carts=carts; this.textView=textView; textView.setText("¥"+total()); } @Override public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { layoutInflater=LayoutInflater.from(parent.getContext()); View view=layoutInflater.inflate(R.layout.template_cart,parent,false); return new ViewHolder(view); } @Override public void onBindViewHolder(ViewHolder holder, int position) { holder.textView1.setText(carts.get(position).getName()); Uri uri=Uri.parse(carts.get(position).getImgUrl()); ImageRequest request = ImageRequestBuilder.newBuilderWithSource(uri) .setProgressiveRenderingEnabled(true) .build(); PipelineDraweeController controller = (PipelineDraweeController) Fresco.newDraweeControllerBuilder() .setImageRequest(request) .build(); holder.simpleDraweeView.setController(controller); Log.d("123",carts.get(position).getPrice()); holder.textView2.setText("¥"+carts.get(position).getPrice()); } private float total(){ if(carts==null){ return 0; }else{ for(ShoppingCart s:carts){ sum+=Float.parseFloat(s.getPrice()); } return sum; } } @Override public int getItemCount() { if(carts!=null) { return carts.size(); }else{ return 0; } } class ViewHolder extends RecyclerView.ViewHolder{ private CheckBox checkBox; private SimpleDraweeView simpleDraweeView; private TextView textView1,textView2; private NumberAddSubView numberAddSubView1; public ViewHolder(View itemView) { super(itemView); checkBox= (CheckBox) itemView.findViewById(R.id.checkbox); checkBox.setClickable(true); simpleDraweeView= (SimpleDraweeView) itemView.findViewById(R.id.drawee_view); textView1= (TextView) itemView.findViewById(R.id.text_title); textView2= (TextView) itemView.findViewById(R.id.text_price); numberAddSubView1= (NumberAddSubView) itemView.findViewById(R.id.num_control); numberAddSubView1.setValue(1); numberAddSubView1.setClickable(true); } }}
0 0
- 20.购物车商品价格的总和(里面有一些功能没有实现,创建textview布局对象,然后for()遍历数据求和)
- js模拟购物车商品价格的增减
- 购物车商品价格计算
- 购物车没有数据
- vue2实现简单的商品加入购物车和结算功能(前端数据保存方向)
- 购物车,TextView右上角实现红色数字变化的实现
- 购物车实现功能
- 购物车功能实现
- 购物车功能实现
- 购物车功能实现
- Android购物车的功能实现(二级列表)
- Android 购物车功能的实现
- angularjs实现的购物车功能
- java 购物车功能的实现
- 淘宝购物车功能的实现
- AJAX实现购物车功能的思路
- angularjs实现购物车的一些功能
- Javaweb开发,实现'购物车'的遍历与操作(页面数据刷新、后台操作反馈)
- 纪念 2016年 ICPC 大连站(2016年的第一次 ICPC )
- 树莓派学习笔记
- 常用排序(一)
- 写了一个自动部署的工具
- Bloom Filter原理与实现
- 20.购物车商品价格的总和(里面有一些功能没有实现,创建textview布局对象,然后for()遍历数据求和)
- [kuangbin带你飞]专题五 并查集 K POJ 2912
- 谓词表达式
- 求阶乘的最后非零位
- Python判断字符串是否为合法标示符
- codeforces 732E (贪心)
- Matlab mex文件
- NPM 使用介绍
- Cocos2d-js中的简易MVC框架(四)显示层View