android购物车遇到的问题

news/2024/5/18 22:40:38

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

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的多选与记录


http://www.niftyadmin.cn/n/707417.html

相关文章

java 通用数组_如何在Java中创建通用数组?

由于Java泛型的实现&#xff0c;因此不能有以下代码&#xff1a;public class GenSet {private E a[];public GenSet() {a new E[INITIAL_ARRAY_LENGTH]; // error: generic array creation}}如何在保持类型安全的同时实现此目的&#xff1f;我在Java论坛上看到了这样的解决方…

荒野大镖客2云存储失败_荒野大镖客2天气系统云雾分帧处理细节

在荒野大镖客2分享在SIGGRAPH2019的文章里面有几张PPT是关于云雾是怎么优化Raymarch效率的&#xff0c;我先按照我的理解说一遍到底这几页PPT在讲什么。首先是告诉我们因为体素不能表现很多高频细节&#xff0c;所以从体素的远端开始要进行视口的Raymarch&#xff0c;然而全分辨…

java注释工具_Java注释和javadoc工具

本篇文章分为两部分&#xff1a;注释(基础)和注释(进阶)。在注释(基础)部分&#xff0c;主要讲述注释的概念、类别、写注释的规范、细节和作用&#xff1b;在注释(进阶)部分&#xff0c;主要讲使用javadoc开发工具生成一个开发者文档。内容概览&#xff1a;注释基础注释的概念注…

LoadRunner监控图表与配置(二)监控运行状况和交易状况

1、在左侧Available Graphs视图中展开Runtime Graphs节点&#xff0c;选择其中一种类型添加至控制器运行标签的界面。 2、在图中显示的空白区域点击右键&#xff0c;在弹出的快捷菜单中选择configure选项&#xff0c;弹出如下图表配置窗口。设置完成后点击“OK”,更改的图表属性…

配送区域是什么意思_Wish卖家如何进行配送设置

本文将向你介绍Wish的配送体系&#xff0c;包括配送政策、运费设置&#xff0c;和关于配送设置的小技巧。关于配送亲爱的Wish商户&#xff0c;在店铺维度上&#xff0c;你可选择以下三种配送范围之一&#xff1a;仅配送至美国、全球配送或配送至选定国家。快速可靠的产品配送是…

java 8 新特性equal使用_Java 8 新特性:4-断言(Predicate)接口

(原)这个接口主要用于判断&#xff0c;先看看它的实现&#xff0c;说明&#xff0c;再给个例子。/** Copyright (c) 2010, 2013, Oracle and/or its affiliates. All rights reserved.* ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.*/package java.util…

oscached

介绍 提供了在现有JSP页面之内实现快速内存缓冲的功能,是一个广泛采用的高性能的J2EE缓存框架&#xff0c;OSCache能用于任何Java应用程序的普通的缓存解决方案。 特点&#xff1a;缓存任何对象&#xff0c;你可以不受限制的缓存部分jsp页面或HTTP请求&#xff0c;任何java对…

jsonp react 获取返回值_ajax请求JSONP格式,后台返回值是SUCCESS,返回这样的数据格式可不可以调用某某方法?...

能不能在不改后台代码的情况下实现&#xff0c;现在总是走error的方法&#xff0c;response只是”success”(**说让他们改后台很难)还要跨站请求的需求。不改后台就实现JSONP??前端什么时候这么厉害了首先要理解什么是jsonp&#xff0c;自己写个请求就行了&#xff0c;不一定…