近期 做购物车的时候 ,遇到几个问题。如今 总结例如以下:

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 UI进阶之实现listview中checkbox的多选与记录

android购物车遇到的问题的更多相关文章

  1. Android 购物车功能的实现

    首先,众所周知,ListView是Android最常用的控件,可以说是最简单的控件,也可以说是最复杂的控件. 作为一个Android初级开发者,可能会简单的ListView展示图文信息. 作为一个有一 ...

  2. Android购物车的实现,仿淘宝天猫京东等APP。处理RecyclerView或listview中的选中事件;

    很久之前的代码了,拉出来晾晾! 购物车大致思路: 分为:商品.店铺.全选: 商品全部选中后--店铺自动选中:商品未全部选中(若有一个商品未选中)--店铺不选中. 店铺全部选中后--全选自动选中:店铺未 ...

  3. Android 购物车的实现

    实现了购物车的全选 全不选  选中删除   选中状态下数量添加时总价随之添加等基本功能. watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L ...

  4. Android项目实战(十):自定义倒计时的TextView

    项目总结 -------------------------------------------------------------------------------------------- 有这 ...

  5. 【转】Android 实现蘑菇街购物车动画效果

    原文出处:http://blog.csdn.net/wangjinyu501/article/details/38400479 1.思路   目前想到两种方式实现这种效果,一是使用Tween动画,直截 ...

  6. Android 实现蘑菇街购物车动画效果

    版本号:1.0  日期:2014.8.6 版权:© 2014 kince 转载注明出处   使用过蘑菇街的用户基本上都知道有一个增加购物车的动画效果,此处不详细描写叙述想知道的能够去下载体验一下. 1 ...

  7. Android中购物车的全选、反选、问题和计算价格

    此Demo主要解决的是购物车中的全选,反选计算价格和选中的条目个数的问题,当选中几条时,点击反选,会把当先选中的变为不选中,把不选中的变为选中.点击全选会全部选中,再次点击时,变为全部不选中. //- ...

  8. Android -- 贝塞尔二阶实现饿了么加入购物车效果

    1,上周我们实现了简单的三阶贝塞尔曲线效果实例,今天是使用二阶贝塞尔曲线加动画实现的加入购物车效果,在码代码过程中出现了些问题,过一下和大家来探讨探讨,先看一下效果图 2,从上面的效果来看我们基本上可 ...

  9. Android实现购物车功能

    如图: 主要代码如下: actvity中的代码: publicclassShoppingCartActivity extendsBaseActivity {      private List< ...

随机推荐

  1. Octave中plot函数的用法

    octave:14> help plot'plot' is a function from the file C:\Octave\Octave3.6.4_gcc4.6.2\share\octav ...

  2. svg translate 操作

    function dragElement(evt) { var target = evt.target; var id = target.id; var dx = evt.dx, dy = evt.d ...

  3. 去除icon图标特效,阴影,反光

    在icon默认情况: 程序的图标会被apple进行美化, 自动圆角, 加上阴影和反光效果:如果不想要这种效果:在Info.plist中 添加一个Icon already includes gloss ...

  4. #define中的“#”和“##”的作用

    在#define中,标准只定义了#和##两种操作: #用来把参数转换成字符串: ##则用来连接两个前后两个参数,把它们变成一个字符串.

  5. 〖Windows〗Linux的Qt程序源码转换至Windows平台运行,编码的解决

    在中国大陆,Windows默认的编码是gb2312,而Linux是UTF8: 多数情况下,把Linux上的程序转换至Windows上运行需要进行编码转换才能正常显示: 而其实大可以不必的,同样,文件使 ...

  6. 从Java的堆栈到Equals和==的比較

    认识Java中堆和栈 栈与堆都是Java用来在Ram中存放数据的地方. 与C++不同.Java自己主动管理栈和堆,程序猿不能直接地设置栈或堆. Java的堆是一个执行时数据区,类的对象从中分配空间.这 ...

  7. SET GLOBAL FOREIGN_KEY_CHECKS取消外键约束

    今天在工作中遇到的问题,在删除一个表时报错,发现有外键约束,所以不能删除,查了下发现需要取消外键约束. SET GLOBAL FOREIGN_KEY_CHECKS=0;全局取消外键约束 SET SES ...

  8. CentOS 7 网络磁盘挂载到本地 并测试传输速度

    本文中的配置只做测试使用,正式环境中考虑到安全,请自行结合网上介绍的配置细节完善配置内容. 首先明确两个概念,服务器和客户端(本地),我们要做的是将服务端的硬盘上的/home/liuyx 目录挂载到本 ...

  9. glusterFS的部署流程

    转自:http://www.cnblogs.com/terrycy/p/5915263.html GlusterFS简单配置   1.准备工作 准备三台机器(物理机或者虚拟机均可)用于安装和测试Glu ...

  10. Oracle创建库

    oracle创建表空间 SYS用户在CMD下以DBA身份登陆: 在CMD中打sqlplus /nolog 然后再 conn / as sysdba --如果路径不存在则要创建路径 --创建临时表空间 ...