Android 购物车实现(NEW)

没错 就是购物车

放图镇楼

Android 购物车实现(NEW)_第1张图片
某宝

大体效果应该就是这样

购物车涉及到的功能

全选 ,反选,总金额,数量加减,结算金额等 差不多了

实现方式 

RecyclerView嵌套RecyclerView

ExpandableListView   可折叠列表

使用ExpandableListView实现购物车

无需依赖   原生控件

ExpandableListView 简介

是一种用于垂直滚动展示两级列表的视图,组可以单独展开

布局代码

Android 购物车实现(NEW)_第2张图片
就4这么简单

初始化控件

Android 购物车实现(NEW)_第3张图片
ButterKnife方式初始化

请求数据

Retrofit+OkHttp+RxJava  请求

MVP回调       省略…………

成功拿到数据后 创建ExpandableListView 的适配器

Android 购物车实现(NEW)_第4张图片
忽略我的类名

适配器中方法介绍

需重写10个抽象方法    不要怕都很简单

Android 购物车实现(NEW)_第5张图片
Android 购物车实现(NEW)_第6张图片
Android 购物车实现(NEW)_第7张图片

获取外/内层视图 需优化

使用ViewHolder 减少findViewById次数

复用 convertView 减少视图创建

Android 购物车实现(NEW)_第8张图片
外层优化

内层也一样

Android 购物车实现(NEW)_第9张图片

展示数据

设置好适配器  数据就可以展示了

Android 购物车实现(NEW)_第10张图片
成功回调

放张当前效果图

Android 购物车实现(NEW)_第11张图片
忽略我这粗糙的布局

下面开始实现功能全选

逻辑是这样 通过适配器传递的List集合   来设置外层和内层的CheckBox状态

需要在外/内层列表的集合添加 isChecked 布尔值属性 添加get set方法 方便调用

明白上边这些白话后  代码来了

先给外/内层 CheckBox设置上默认状态 

用于获取适配器集合

全选/反选

Android 购物车实现(NEW)_第12张图片

组选

Android 购物车实现(NEW)_第13张图片

计算总金额及个数

Android 购物车实现(NEW)_第14张图片

在全选按钮监听中 调用该方法 传递相应集合

Android 购物车实现(NEW)_第15张图片
就可以了

当前效果图

Android 购物车实现(NEW)_第16张图片

组选 计算金额

使用到了EventBus

Android 购物车实现(NEW)_第17张图片
Android 购物车实现(NEW)_第18张图片

单选

Android 购物车实现(NEW)_第19张图片

当前效果图

Android 购物车实现(NEW)_第20张图片


暂时就到这了  明天抽时间写下加减器的逻辑  

晚安。

                                                    -----听君一席话,白读两年书

                                                    -----2020-0309-22:47   我爱生活 生活爱我   阿门。

加减器

首先自定义View   (组合式View)  

需要接口回调 数量

Android 购物车实现(NEW)_第21张图片
当用户点击 -   监听
Android 购物车实现(NEW)_第22张图片
当用户点击 +  监听

当前效果图

Android 购物车实现(NEW)_第23张图片

实时计算金额展示

当数量改变  及时计算金额 并展示

自定义View   实例化后 通过viewHolder调用接口 回调传递的数据

Android 购物车实现(NEW)_第24张图片

这就可以了

再放效果图

Android 购物车实现(NEW)_第25张图片

到这  一个简陋的购物车就实现了

当用户点击去付款后  就会带着当前选中的数据  去支付

                                                                                                    -----完

                                                                                                    2020-03-10-22:12

你可能感兴趣的:(Android 购物车实现(NEW))