android 仿饿了么购物车
这次分享的是一个很常见的效果,凡是涉及到购物的app或者旅游类以及订餐类的app都有看到过这种效果,两个list view联动显示,添加购物车时的一个抛物线动画实现,以及图标或者item右上角的数字显示。下面是我空闲时候写的一个demo,界面比较陋,但是基本效果都实现了。
不多说,看效果图:
只对添加按钮做了监听,删除没去写(没什么必要)。
讲一些主要的代码,想下载源码的可以去这里下载(https://github.com/bobge/LinkedListView.git):
左边的listview的item右上角的数字是通过xml方式来显示的:
shape_data.xml
- <?xml version="1.0" encoding="UTF-8"?>
- <shape
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:shape="oval"
- android:useLevel="false" >
- <solid android:color="#f00000" />
- <padding
- android:left="2dp"
- android:top="1dp"
- android:right="2dp"
- android:bottom="1dp" />
- <solid
- android:color="#f00000" />
- <size android:width="15dp"
- android:height="15dp" />
- </shape>
想要实现圆形中间显示数字只需要设置textview的宽高一样就可以,然后设置textview的一个属性为:
android:background="@drawable/shape_data"
购物车下面那个数字显示我换了一种实现方式:调用BadgeView这个自定义类就能够实现,用法很简单,大家可以搜索一下这个类。
两个listview的联动也很简单:
listView1.setOnItemClickListener(new AdapterView.OnItemClickListener() {@Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) {list2.clear();list2.addAll(list.get(position).getList());goodsAdapter.notifyDataSetChanged();} });
只要在左边list view的监听中给右边list view的适配器notifyDataSetChanged就可以了。主要看看我的数据源格式应该就明白了。
抛物线动画效果的实现,这部分网上有很多demo实现,其实原理很简单,首先获取点击的那个位置的坐标:
int[] startLocation = new int[2];// 一个整型数组,用来存储按钮的在屏幕的X、Y坐标 v.getLocationInWindow(startLocation);// 这是获取购买按钮的在屏幕的X、Y坐标(这也是动画开始的坐标)
通过同样的方法计算结束位置(即购物车的位置坐标),然后计算x,y轴上的平移距离,用AnimationSet添加translateAnimationX和translateAnimationY就ok了,具体的可以去下载源码看看。
android 仿饿了么购物车相关推荐
- android 购物车 简书,Android仿饿了么购物车效果
先看下效果图: ezgif-1-8f133ca916.gif 1.首先列表布局采用Recycleview android:id="@+id/container" android:l ...
- 仿饿了么购物车下单效果
文章目录 仿饿了么购物车下单效果 效果图如下 主要的功能 主要功能实现 分类及商品及购物车里面商品数量的联动效果 底部购物车商品列表 添加商品是有0到1,减少商品有1到0动画效果 下单动画 仿饿了么购 ...
- android饿了么购物车,Android仿饿了么加入购物车旋转控件自带闪转腾挪动画的按钮效果(实例详解)...
概述 在上文,酷炫Path动画已经预告了,今天给大家带来的是利用 纯自定义View,实现的仿饿了么加入购物车控件,自带闪转腾挪动画的按钮. 效果图如下: 图1 项目中使用的效果,考虑到了View的回收 ...
- Android仿饿了么搜索功能
仿饿了么搜索框 这里采用的是pupupWindow来实现,一个全屏的popupWindow里面放各个View做对应操作 首先是activity_popup.xml布局,很简单,就一个带背景的TextV ...
- Android仿饿了么加减控件,Flutter + Native混合栈仿饿了么APP
前言 一个基于Flutter + Native混合开发的APP,请求数据均人为制造. 目前仅上传Android版本,iOS暂未上传 APK下载 Github地址 效果图: 实现功能: 首页 使用百度定 ...
- android仿饿了么筛选,Android仿饿了么搜索功能
仿饿了么搜索框 这里采用的是pupupWindow来实现,一个全屏的popupWindow里面放各个View做对应操作 首先是activity_popup.xml布局,很简单,就一个带背景的TextV ...
- Vuex仿饿了么购物车功能
饿了么购物车功能 今天通过Vuex完成了基本的购物车功能,对Vuex的store和mutation有了进一步认识. 实现购物车所需要的数据 store作为可以全局访问的数据仓库,满足了我们在任意一个组 ...
- Android之仿饿了吗购物车抛物线动画
一:效果图. 二:实现的步骤: 1.在主工程build.gradle文件下加入包并引用,这个必须得要 compile 'com.android.support:design:23.3.0' compi ...
- Android仿淘宝加入购物车布局效果
实现效果: 思路:点击购物车弹出一个PopupWindow,主要弄清楚的是PopupWindow的高度以及透明度,图片的位置,图片下层布局的高度(它的高度比popup的低一些).PopupWindow ...
最新文章
- swagger error: Conflicting schemaIds: Duplicate schemaIds detected for types A and B
- C#中Dispose和Close的区别
- 世界围棋人机大战、顶峰对决第一盘:围棋世界冠军Lee Sedol(李世石,围棋职业九段)对战Google DeepMind AlphaGo围棋程序,Google AlphaGo首战告捷
- hbase 按时刻查询_HBase读写优化
- android progressbar动态,如何在android中动态启动和完成progressBar
- Android]Android字体高度的研究
- leetcode 452. Minimum Number of Arrows to Burst Balloons | 452. 用最少数量的箭引爆气球(左程云:最大线段重合问题)
- labimage 怎样旋转图片_大理石旋转楼梯的测量方法,你学会了吗?
- 浅谈 Spring 框架注解的用法分析
- php 去掉url中的index.php,php 去掉url中的index.php
- bigemap地图下载器优势分析
- 云溪云原生分布式数据库安全功能以及实现介绍
- java中xom是啥包?_XML问题,XOM Java XML API
- 版本号规范,镜像版本SNAPSHOT,LATEST 和 RELEASE 版本
- 怎么恢复永久删除的文件
- Linux之无人值守安装系统
- Rabbit的字符串
- 本科就学人工智能有意义吗?
- 牛客 小米校招 计算题 单调栈 接雨水
- Excel2019关闭时无响应
热门文章
- 实验组和对照组的样本量一定要“均衡”才行?
- 电脑录屏怎么添加水印?这个好方法掌握了吗
- oracle 的setup没反应,win10系统下setup.exe打不开没反应如何解决
- 瞄准MSP市场风口,Bespin为企业转型保驾护航
- (干货)换宝贝技术升级!日销暴涨2000件,SKU改价不降权
- 怎么将heic格式的图片转换成jpg格式呢?
- 中秋节的HTML5制作,中秋节视频制作教程大放送-会声会影中文官网
- 水果忍者激战版的开发心得
- 童年游戏机项目,每天被动收入200+
- 【发射极接地 共射级放大电路 原理讲解与元器件取值 (详细参数说明)+multisim仿真】