android 仿饿了么购物车
来源:互联网 发布:淘宝里食品类目划分 编辑:程序博客网 时间:2024/04/29 13:26
这次分享的是一个很常见的效果,凡是涉及到购物的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>
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了,具体的可以去下载源码看看。 6 0
- android 仿饿了么购物车
- android 仿饿了么购物车
- Android之仿饿了吗购物车抛物线动画
- 仿饿了么加入购物车旋转控件
- 仿饿了么加入购物车旋转控件
- 仿饿了么购物车效果(UI效果)
- 仿饿了么加入购物车旋转控件
- 仿饿了么加入购物车旋转控件
- 仿饿了么悬浮购物车按钮
- 仿饿了么购物车下单效果
- 仿饿了么点击购物效果
- Android开发之贝塞尔曲线进阶篇(仿直播送礼物,饿了么购物车动画)
- Android仿淘宝购物车
- Android仿淘宝购物车
- Android仿外卖购物车
- Android仿淘宝购物车
- 仿饿了么购物车下单动画效果
- iOS 仿百度外卖,饿了么-点餐效果(加入购物车效果)
- 数据结构05:图
- Hdu 5346 MZL's game 2015ACM多校对抗赛第五场
- hdu 5349 MZL's simple problem 2015多校联合训练赛#5 简单题
- (C/C++学习笔记)指针做函数参数形成回调
- HDU 1272 小希的迷宫
- android 仿饿了么购物车
- 设计模式---Java源码中的设计模式
- 关于WCF配置文件的知识点讲解1
- Java多线程总结
- 南邮 OJ 1587 3n+1
- PLSQL 编程基础
- MFC应用程序中 App MainFrm Document View 菜单栏 工具栏 相互之间的关系
- spark streaming kafka1.4.1中的低阶api createDirectStream使用总结
- 指针与引用的区别