android购物车遇到的问题
近期 做购物车的时候 ,遇到几个问题。如今 总结例如以下:
1:不让listview复用组件(购物车。或者有特殊操作的时候):
自己保存全部的view对象
public View getView(final int position, View convertView, ViewGroup parent) {
final DaydayCouponBean bean = list.get(position);
View view = DataCenter.shoppingCarMap.get(new Integer(position));
convertView = LayoutInflater.from(context).inflate(R.layout.daydaycoupon_shoppingcar_item, null);
DataCenter.shoppingCarMap.put(position, convertView);
} else {
convertView = DataCenter.shoppingCarMap.get(new Integer(position));
}
return view;
}
相应的Map
<strong>public static TreeMap<Integer, View> shoppingCarMap = new TreeMap<Integer, View>();</strong>
2:scrowvdiw嵌套lsitview 高度无法计算 每次更新数据集Arraylist之后,手动计算lsitview的高度,全部的item就都会初始化
或者 购物车 要 一次性 初始化全部的 item(如 获取全部的商品总额,不是当前页吗可见区域的总额)
<span style="font-size:14px;"> adapter.notifyDataSetChanged();
float density = getResources().getDisplayMetrics().density; // 屏幕密度(0.75 / 1.0 / 1.5)
<strong> UIUitls.setListViewHeightBasedOnChildren(listView, (int) (density * 20));</strong></span>
3:listview嵌套问题具体见:
http://ryanjoy.iteye.com/blog/1291331
注意,在使用listview嵌套listview发现,计算的高度还是比較诡异,解决的方法??要使用自己定义的listview
/**
* Created by david on 2014/6/30.
* 解决lsitview 嵌套 listveiw 高度计算错误。使用的lsitview
*/
public class MyListview extends ListView { public MyListview(Context context) {
super(context);
} public MyListview(Context context, AttributeSet attrs) {
super(context, attrs);
} public MyListview(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
} @Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
<strong> int expandSpec = MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE >> 2,
MeasureSpec.AT_MOST);</strong>
super.onMeasure(widthMeasureSpec, expandSpec);
}
}
每次又一次刷新lsitrview的时候
UIUitls.setListViewHeightBasedOnChildren(listView, DensityUtil.dip2px(120),beans.size() );
adapter.notifyDataSetChanged();
android购物车遇到的问题的更多相关文章
- Android 购物车功能的实现
首先,众所周知,ListView是Android最常用的控件,可以说是最简单的控件,也可以说是最复杂的控件. 作为一个Android初级开发者,可能会简单的ListView展示图文信息. 作为一个有一 ...
- Android购物车的实现,仿淘宝天猫京东等APP。处理RecyclerView或listview中的选中事件;
很久之前的代码了,拉出来晾晾! 购物车大致思路: 分为:商品.店铺.全选: 商品全部选中后--店铺自动选中:商品未全部选中(若有一个商品未选中)--店铺不选中. 店铺全部选中后--全选自动选中:店铺未 ...
- Android 购物车的实现
实现了购物车的全选 全不选 选中删除 选中状态下数量添加时总价随之添加等基本功能. watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L ...
- Android项目实战(十):自定义倒计时的TextView
项目总结 -------------------------------------------------------------------------------------------- 有这 ...
- 【转】Android 实现蘑菇街购物车动画效果
原文出处:http://blog.csdn.net/wangjinyu501/article/details/38400479 1.思路 目前想到两种方式实现这种效果,一是使用Tween动画,直截 ...
- Android 实现蘑菇街购物车动画效果
版本号:1.0 日期:2014.8.6 版权:© 2014 kince 转载注明出处 使用过蘑菇街的用户基本上都知道有一个增加购物车的动画效果,此处不详细描写叙述想知道的能够去下载体验一下. 1 ...
- Android中购物车的全选、反选、问题和计算价格
此Demo主要解决的是购物车中的全选,反选计算价格和选中的条目个数的问题,当选中几条时,点击反选,会把当先选中的变为不选中,把不选中的变为选中.点击全选会全部选中,再次点击时,变为全部不选中. //- ...
- Android -- 贝塞尔二阶实现饿了么加入购物车效果
1,上周我们实现了简单的三阶贝塞尔曲线效果实例,今天是使用二阶贝塞尔曲线加动画实现的加入购物车效果,在码代码过程中出现了些问题,过一下和大家来探讨探讨,先看一下效果图 2,从上面的效果来看我们基本上可 ...
- Android实现购物车功能
如图: 主要代码如下: actvity中的代码: publicclassShoppingCartActivity extendsBaseActivity { private List< ...
随机推荐
- Octave中plot函数的用法
octave:14> help plot'plot' is a function from the file C:\Octave\Octave3.6.4_gcc4.6.2\share\octav ...
- svg translate 操作
function dragElement(evt) { var target = evt.target; var id = target.id; var dx = evt.dx, dy = evt.d ...
- 去除icon图标特效,阴影,反光
在icon默认情况: 程序的图标会被apple进行美化, 自动圆角, 加上阴影和反光效果:如果不想要这种效果:在Info.plist中 添加一个Icon already includes gloss ...
- #define中的“#”和“##”的作用
在#define中,标准只定义了#和##两种操作: #用来把参数转换成字符串: ##则用来连接两个前后两个参数,把它们变成一个字符串.
- 〖Windows〗Linux的Qt程序源码转换至Windows平台运行,编码的解决
在中国大陆,Windows默认的编码是gb2312,而Linux是UTF8: 多数情况下,把Linux上的程序转换至Windows上运行需要进行编码转换才能正常显示: 而其实大可以不必的,同样,文件使 ...
- 从Java的堆栈到Equals和==的比較
认识Java中堆和栈 栈与堆都是Java用来在Ram中存放数据的地方. 与C++不同.Java自己主动管理栈和堆,程序猿不能直接地设置栈或堆. Java的堆是一个执行时数据区,类的对象从中分配空间.这 ...
- SET GLOBAL FOREIGN_KEY_CHECKS取消外键约束
今天在工作中遇到的问题,在删除一个表时报错,发现有外键约束,所以不能删除,查了下发现需要取消外键约束. SET GLOBAL FOREIGN_KEY_CHECKS=0;全局取消外键约束 SET SES ...
- CentOS 7 网络磁盘挂载到本地 并测试传输速度
本文中的配置只做测试使用,正式环境中考虑到安全,请自行结合网上介绍的配置细节完善配置内容. 首先明确两个概念,服务器和客户端(本地),我们要做的是将服务端的硬盘上的/home/liuyx 目录挂载到本 ...
- glusterFS的部署流程
转自:http://www.cnblogs.com/terrycy/p/5915263.html GlusterFS简单配置 1.准备工作 准备三台机器(物理机或者虚拟机均可)用于安装和测试Glu ...
- Oracle创建库
oracle创建表空间 SYS用户在CMD下以DBA身份登陆: 在CMD中打sqlplus /nolog 然后再 conn / as sysdba --如果路径不存在则要创建路径 --创建临时表空间 ...