属性动画+购物车+下订单

//首先导依赖

    compile 'com.squareup.okhttp3:okhttp:3.6.0'
    compile 'com.squareup.okio:okio:1.11.0'
    compile 'com.google.code.gson:gson:2.2.4'
    compile 'com.github.bumptech.glide:glide:3.5.2'
    compile 'com.android.support:support-v4:22.0.0'

    compile "com.android.support:design:24.1.1"
    compile 'com.jcodecraeer:xrecyclerview:1.3.2'


//配置文件

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.bwie.shopingcart">

    <uses-permission android:name="android.permission.INTERNET" />

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity android:name=".View.activity.AnimateActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity android:name=".View.activity.CartActivity" />
        <activity android:name=".View.activity.UserActivity" />
        <activity android:name=".View.activity.OrderActivity" />
        <activity android:name=".View.activity.OrderListActivity"></activity>
    </application>

</manifest>



model中的bean

package com.bwie.shopingcart.Model.bean;

import java.util.List;

public class CartBean {

    /**
     * msg : 请求成功
     * code : 0
     * data : [{"list":[{"bargainPrice":11800,"createtime":"2017-10-10T17:33:37","detailUrl":"https://item.m.jd.com/product/4338107.html?utm#_source=androidapp&utm#_medium=appshare&utm#_campaign=t#_335139774&utm#_term=QQfriends","images":"https://m.360buyimg.com/n0/jfs/t6700/155/2098998076/156185/6cf95035/595dd5a5Nc3a7dab5.jpg!q70.jpg","num":3,"pid":57,"price":5199,"pscid":40,"selected":1,"sellerid":1,"subhead":"【i5 MX150 2G显存】全高清窄边框 8G内存 256固态硬盘 支持指纹识别 预装WIN10系统","title":"小米(MI)Air 13.3英寸全金属轻薄笔记本(i5-7200U 8G 256G PCle SSD MX150 2G独显 FHD 指纹识别 Win10)银\r\n"}],"sellerName":"商家1","sellerid":"1"},{"list":[{"bargainPrice":11800,"createtime":"2017-10-14T21:38:26","detailUrl":"https://item.m.jd.com/product/5025518.html?utm#_source=androidapp&utm#_medium=appshare&utm#_campaign=t#_335139774&utm#_term=QQfriends","images":"https://m.360buyimg.com/n0/jfs/t8830/106/1760940277/195595/5cf9412f/59bf2ef5N5ab7dc16.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t5428/70/1520969931/274676/b644dd0d/591128e7Nd2f70da0.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t5566/365/1519564203/36911/620c750c/591128eaN54ac3363.jpg!q70.jpg","num":3,"pid":58,"price":6399,"pscid":40,"selected":1,"sellerid":2,"subhead":"升级4G大显存!Nvme协议Pcie SSD,速度快人一步】GTX1050Ti就选拯救者!专业游戏键盘&新模具全新设计!","title":"联想(Lenovo)拯救者R720 15.6英寸游戏笔记本电脑(i5-7300HQ 8G 1T+128G SSD GTX1050Ti 4G IPS 黑)"}],"sellerName":"商家2","sellerid":"2"},{"list":[{"bargainPrice":5599,"createtime":"2017-10-10T17:30:32","detailUrl":"https://item.m.jd.com/product/4824715.html?utm#_source=androidapp&utm#_medium=appshare&utm#_campaign=t#_335139774&utm#_term=QQfriends","images":"https://m.360buyimg.com/n12/jfs/t7768/184/1153704394/148460/f42e1432/599a930fN8a85626b.jpg!q70.jpg","num":3,"pid":59,"price":5599,"pscid":40,"selected":0,"sellerid":3,"subhead":"游戏本选择4G独显,拒绝掉帧】升级版IPS全高清防眩光显示屏,WASD方向键颜色加持,三大出风口立体散热!","title":"戴尔DELL灵越游匣15PR-6648B GTX1050 15.6英寸游戏笔记本电脑(i5-7300HQ 8G 128GSSD+1T 4G独显 IPS)黑"}],"sellerName":"商家3","sellerid":"3"},{"list":[{"bargainPrice":11800,"createtime":"2017-10-14T21:38:26","detailUrl":"https://mitem.jd.hk/ware/view.action?wareId=1988853309&cachekey=1acb07a701ece8d2434a6ae7fa6870a1","images":"https://m.360buyimg.com/n0/jfs/t6130/97/1370670410/180682/1109582a/593276b1Nd81fe723.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t5698/110/2617517836/202970/c9388feb/593276b7Nbd94ef1f.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t5698/110/2617517836/202970/c9388feb/593276b7Nbd94ef1f.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t5815/178/2614671118/51656/7f52d137/593276c7N107b725a.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t5878/60/2557817477/30873/4502b606/593276caN5a7d6357.jpg!q70.jpg","num":1,"pid":63,"price":10000,"pscid":40,"selected":0,"sellerid":7,"subhead":"购买电脑办公部分商品满1元返火车票5元优惠券(返完即止)","title":"全球购 新款Apple MacBook Pro 苹果笔记本电脑 银色VP2新13英寸Bar i5/8G/256G"}],"sellerName":"商家7","sellerid":"7"},{"list":[{"bargainPrice":11800,"createtime":"2017-10-03T23:43:53","detailUrl":"https://mitem.jd.hk/ware/view.action?wareId=1988853309&cachekey=1acb07a701ece8d2434a6ae7fa6870a1","images":"https://m.360buyimg.com/n0/jfs/t6130/97/1370670410/180682/1109582a/593276b1Nd81fe723.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t5698/110/2617517836/202970/c9388feb/593276b7Nbd94ef1f.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t5698/110/2617517836/202970/c9388feb/593276b7Nbd94ef1f.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t5815/178/2614671118/51656/7f52d137/593276c7N107b725a.jpg!q70.jpg|https://m.360buyimg.com/n0/jfs/t5878/60/2557817477/30873/4502b606/593276caN5a7d6357.jpg!q70.jpg","num":1,"pid":64,"price":11000,"pscid":40,"selected":1,"sellerid":8,"subhead":"购买电脑办公部分商品满1元返火车票5元优惠券(返完即止)","title":"全球购 新款Apple MacBook Pro 苹果笔记本电脑 银色VP2新13英寸Bar i5/8G/256G"}],"sellerName":"商家8","sellerid":"8"}]
     */

    private String msg;
    private String code;
    private List<DataBean> data;

    public String getMsg() {
        return msg;
    }

    public void setMsg(String msg) {
        this.msg = msg;
    }

    public String getCode() {
        return code;
    }

    public void setCode(String code) {
        this.code = code;
    }

    public List<DataBean> getData() {
        return data;
    }

    public void setData(List<DataBean> data) {
        this.data = data;
    }

    public static class DataBean {
        /**
         * list : [{"bargainPrice":11800,"createtime":"2017-10-10T17:33:37","detailUrl":"https://item.m.jd.com/product/4338107.html?utm#_source=androidapp&utm#_medium=appshare&utm#_campaign=t#_335139774&utm#_term=QQfriends","images":"https://m.360buyimg.com/n0/jfs/t6700/155/2098998076/156185/6cf95035/595dd5a5Nc3a7dab5.jpg!q70.jpg","num":3,"pid":57,"price":5199,"pscid":40,"selected":1,"sellerid":1,"subhead":"【i5 MX150 2G显存】全高清窄边框 8G内存 256固态硬盘 支持指纹识别 预装WIN10系统","title":"小米(MI)Air 13.3英寸全金属轻薄笔记本(i5-7200U 8G 256G PCle SSD MX150 2G独显 FHD 指纹识别 Win10)银\r\n"}]
         * sellerName : 商家1
         * sellerid : 1
         */

        private String sellerName;
        private String sellerid;
        private List<ListBean> list;
        private boolean GroupCheck;

        public boolean isGroupCheck() {
            return GroupCheck;
        }

        public void setGroupCheck(boolean groupCheck) {
            GroupCheck = groupCheck;
        }

        public String getSellerName() {
            return sellerName;
        }

        public void setSellerName(String sellerName) {
            this.sellerName = sellerName;
        }

        public String getSellerid() {
            return sellerid;
        }

        public void setSellerid(String sellerid) {
            this.sellerid = sellerid;
        }

        public List<ListBean> getList() {
            return list;
        }

        public void setList(List<ListBean> list) {
            this.list = list;
        }

        public static class ListBean {
            /**
             * bargainPrice : 11800.0
             * createtime : 2017-10-10T17:33:37
             * detailUrl : https://item.m.jd.com/product/4338107.html?utm#_source=androidapp&utm#_medium=appshare&utm#_campaign=t#_335139774&utm#_term=QQfriends
             * images : https://m.360buyimg.com/n0/jfs/t6700/155/2098998076/156185/6cf95035/595dd5a5Nc3a7dab5.jpg!q70.jpg
             * num : 3
             * pid : 57
             * price : 5199.0
             * pscid : 40
             * selected : 1
             * sellerid : 1
             * subhead : 【i5 MX150 2G显存】全高清窄边框 8G内存 256固态硬盘 支持指纹识别 预装WIN10系统
             * title : 小米(MI)Air 13.3英寸全金属轻薄笔记本(i5-7200U 8G 256G PCle SSD MX150 2G独显 FHD 指纹识别 Win10)银

             */

            private double bargainPrice;
            private String createtime;
            private String detailUrl;
            private String images;
            private int num;
            private int pid;
            private double price;
            private int pscid;
            private int selected;
            private int sellerid;
            private String subhead;
            private String title;

            public double getBargainPrice() {
                return bargainPrice;
            }

            public void setBargainPrice(double bargainPrice) {
                this.bargainPrice = bargainPrice;
            }

            public String getCreatetime() {
                return createtime;
            }

            public void setCreatetime(String createtime) {
                this.createtime = createtime;
            }

            public String getDetailUrl() {
                return detailUrl;
            }

            public void setDetailUrl(String detailUrl) {
                this.detailUrl = detailUrl;
            }

            public String getImages() {
                return images;
            }

            public void setImages(String images) {
                this.images = images;
            }

            public int getNum() {
                return num;
            }

            public void setNum(int num) {
                this.num = num;
            }

            public int getPid() {
                return pid;
            }

            public void setPid(int pid) {
                this.pid = pid;
            }

            public double getPrice() {
                return price;
            }

            public void setPrice(double price) {
                this.price = price;
            }

            public int getPscid() {
                return pscid;
            }

            public void setPscid(int pscid) {
                this.pscid = pscid;
            }

            public int getSelected() {
                return selected;
            }

            public void setSelected(int selected) {
                this.selected = selected;
            }

            public int getSellerid() {
                return sellerid;
            }

            public void setSellerid(int sellerid) {
                this.sellerid = sellerid;
            }

            public String getSubhead() {
                return subhead;
            }

            public void setSubhead(String subhead) {
                this.subhead = subhead;
            }

            public String getTitle() {
                return title;
            }

            public void setTitle(String title) {
                this.title = title;
            }
        }
    }
}


model层的bean

package com.bwie.shopingcart.Model.bean;

public class OrderBean {

    /**
     * msg : 订单创建成功
     * code : 0
     */

    private String msg;
    private String code;

    public String getMsg() {
        return msg;
    }

    public void setMsg(String msg) {
        this.msg = msg;
    }

    public String getCode() {
        return code;
    }

    public void setCode(String code) {
        this.code = code;
    }
}


model层的bean

package com.bwie.shopingcart.Model.bean;

import java.util.List;


public class OrderListBean {

    /**
     * msg : 请求成功
     * code : 0
     * data : [{"createtime":"2017-12-20T13:25:10","orderid":3731,"price":22165,"status":0,"title":"订单测试标题5058","uid":5058},{"createtime":"2017-12-20T13:30:56","orderid":3733,"price":22165,"status":0,"title":"订单测试标题5058","uid":5058},{"createtime":"2017-12-20T13:59:00","orderid":3746,"price":81165,"status":0,"title":"订单测试标题5058","uid":5058},{"createtime":"2017-12-20T14:05:46","orderid":3753,"price":81165,"status":0,"title":"订单测试标题5058","uid":5058},{"createtime":"2017-12-20T14:13:07","orderid":3768,"price":11800,"status":0,"title":"订单测试标题5058","uid":5058},{"createtime":"2017-12-20T14:15:43","orderid":3787,"price":11800,"status":0,"title":"订单测试标题5058","uid":5058},{"createtime":"2017-12-20T14:24:33","orderid":3806,"price":47200,"status":0,"title":"订单测试标题5058","uid":5058},{"createtime":"2017-12-20T14:30:42","orderid":3812,"price":106200,"status":0,"title":"订单测试标题5058","uid":5058},{"createtime":"2017-12-20T14:33:03","orderid":3815,"price":47200,"status":0,"title":"订单测试标题5058","uid":5058},{"createtime":"2017-12-20T14:36:36","orderid":3825,"price":82600,"status":0,"title":"订单测试标题5058","uid":5058}]
     * page : 1
     */

    private String msg;
    private String code;
    private String page;
    private List<DataBean> data;

    public String getMsg() {
        return msg;
    }

    public void setMsg(String msg) {
        this.msg = msg;
    }

    public String getCode() {
        return code;
    }

    public void setCode(String code) {
        this.code = code;
    }

    public String getPage() {
        return page;
    }

    public void setPage(String page) {
        this.page = page;
    }

    public List<DataBean> getData() {
        return data;
    }

    public void setData(List<DataBean> data) {
        this.data = data;
    }

    public static class DataBean {
        /**
         * createtime : 2017-12-20T13:25:10
         * orderid : 3731
         * price : 22165.0
         * status : 0
         * title : 订单测试标题5058
         * uid : 5058
         */

        private String createtime;
        private int orderid;
        private double price;
        private int status;
        private String title;
        private int uid;

        public String getCreatetime() {
            return createtime;
        }

        public void setCreatetime(String createtime) {
            this.createtime = createtime;
        }

        public int getOrderid() {
            return orderid;
        }

        public void setOrderid(int orderid) {
            this.orderid = orderid;
        }

        public double getPrice() {
            return price;
        }

        public void setPrice(double price) {
            this.price = price;
        }

        public int getStatus() {
            return status;
        }

        public void setStatus(int status) {
            this.status = status;
        }

        public String getTitle() {
            return title;
        }

        public void setTitle(String title) {
            this.title = title;
        }

        public int getUid() {
            return uid;
        }

        public void setUid(int uid) {
            this.uid = uid;
        }
    }
}

model层中的bean

package com.bwie.shopingcart.Model.bean;

import java.io.Serializable;



public class PriceAndNum implements Serializable{
    private String sumprice;
    private int num;

    public PriceAndNum(String sumprice, int num) {
        this.sumprice = sumprice;
        this.num = num;
    }

    public PriceAndNum() {

    }

    public String getSumprice() {
        return sumprice;
    }

    public void setSumprice(String sumprice) {
        this.sumprice = sumprice;
    }

    public int getNum() {
        return num;
    }

    public void setNum(int num) {
        this.num = num;
    }
}

model中的bean

public class UserBean {

    /**
     * msg : 登录成功
     * code : 0
     * data : {"age":null,"appkey":"5486f090fd382b68","appsecret":"AC74A96DDCCFA66691BC78F1C1FF0893","createtime":"2017-12-19T14:21:58","email":null,"fans":null,"follow":null,"gender":null,"icon":null,"latitude":null,"longitude":null,"mobile":"18230436640","money":null,"nickname":null,"password":"473344696F4685CAE5B5B3C354BC77BE","praiseNum":null,"token":"002FA5C857C88978A9F20908ECAB9EC9","uid":4831,"userId":null,"username":"18230436640"}
     */

    private String msg;
    private String code;
    private DataBean data;

    public String getMsg() {
        return msg;
    }

    public void setMsg(String msg) {
        this.msg = msg;
    }

    public String getCode() {
        return code;
    }

    public void setCode(String code) {
        this.code = code;
    }

    public DataBean getData() {
        return data;
    }

    public void setData(DataBean data) {
        this.data = data;
    }

    public static class DataBean {
        /**
         * age : null
         * appkey : 5486f090fd382b68
         * appsecret : AC74A96DDCCFA66691BC78F1C1FF0893
         * createtime : 2017-12-19T14:21:58
         * email : null
         * fans : null
         * follow : null
         * gender : null
         * icon : null
         * latitude : null
         * longitude : null
         * mobile : 18230436640
         * money : null
         * nickname : null
         * password : 473344696F4685CAE5B5B3C354BC77BE
         * praiseNum : null
         * token : 002FA5C857C88978A9F20908ECAB9EC9
         * uid : 4831
         * userId : null
         * username : 18230436640
         */

        private Object age;
        private String appkey;
        private String appsecret;
        private String createtime;
        private Object email;
        private Object fans;
        private Object follow;
        private Object gender;
        private Object icon;
        private Object latitude;
        private Object longitude;
        private String mobile;
        private Object money;
        private Object nickname;
        private String password;
        private Object praiseNum;
        private String token;
        private int uid;
        private Object userId;
        private String username;

        public Object getAge() {
            return age;
        }

        public void setAge(Object age) {
            this.age = age;
        }

        public String getAppkey() {
            return appkey;
        }

        public void setAppkey(String appkey) {
            this.appkey = appkey;
        }

        public String getAppsecret() {
            return appsecret;
        }

        public void setAppsecret(String appsecret) {
            this.appsecret = appsecret;
        }

        public String getCreatetime() {
            return createtime;
        }

        public void setCreatetime(String createtime) {
            this.createtime = createtime;
        }

        public Object getEmail() {
            return email;
        }

        public void setEmail(Object email) {
            this.email = email;
        }

        public Object getFans() {
            return fans;
        }

        public void setFans(Object fans) {
            this.fans = fans;
        }

        public Object getFollow() {
            return follow;
        }

        public void setFollow(Object follow) {
            this.follow = follow;
        }

        public Object getGender() {
            return gender;
        }

        public void setGender(Object gender) {
            this.gender = gender;
        }

        public Object getIcon() {
            return icon;
        }

        public void setIcon(Object icon) {
            this.icon = icon;
        }

        public Object getLatitude() {
            return latitude;
        }

        public void setLatitude(Object latitude) {
            this.latitude = latitude;
        }

        public Object getLongitude() {
            return longitude;
        }

        public void setLongitude(Object longitude) {
            this.longitude = longitude;
        }

        public String getMobile() {
            return mobile;
        }

        public void setMobile(String mobile) {
            this.mobile = mobile;
        }

        public Object getMoney() {
            return money;
        }

        public void setMoney(Object money) {
            this.money = money;
        }

        public Object getNickname() {
            return nickname;
        }

        public void setNickname(Object nickname) {
            this.nickname = nickname;
        }

        public String getPassword() {
            return password;
        }

        public void setPassword(String password) {
            this.password = password;
        }

        public Object getPraiseNum() {
            return praiseNum;
        }

        public void setPraiseNum(Object praiseNum) {
            this.praiseNum = praiseNum;
        }

        public String getToken() {
            return token;
        }

        public void setToken(String token) {
            this.token = token;
        }

        public int getUid() {
            return uid;
        }

        public void setUid(int uid) {
            this.uid = uid;
        }

        public Object getUserId() {
            return userId;
        }

        public void setUserId(Object userId) {
            this.userId = userId;
        }

        public String getUsername() {
            return username;
        }

        public void setUsername(String username) {
            this.username = username;
        }
    }
}


public class UserBean {

    /**
     * msg : 登录成功
     * code : 0
     * data : {"age":null,"appkey":"5486f090fd382b68","appsecret":"AC74A96DDCCFA66691BC78F1C1FF0893","createtime":"2017-12-19T14:21:58","email":null,"fans":null,"follow":null,"gender":null,"icon":null,"latitude":null,"longitude":null,"mobile":"18230436640","money":null,"nickname":null,"password":"473344696F4685CAE5B5B3C354BC77BE","praiseNum":null,"token":"002FA5C857C88978A9F20908ECAB9EC9","uid":4831,"userId":null,"username":"18230436640"}
     */

    private String msg;
    private String code;
    private DataBean data;

    public String getMsg() {
        return msg;
    }

    public void setMsg(String msg) {
        this.msg = msg;
    }

    public String getCode() {
        return code;
    }

    public void setCode(String code) {
        this.code = code;
    }

    public DataBean getData() {
        return data;
    }

    public void setData(DataBean data) {
        this.data = data;
    }

    public static class DataBean {
        /**
         * age : null
         * appkey : 5486f090fd382b68
         * appsecret : AC74A96DDCCFA66691BC78F1C1FF0893
         * createtime : 2017-12-19T14:21:58
         * email : null
         * fans : null
         * follow : null
         * gender : null
         * icon : null
         * latitude : null
         * longitude : null
         * mobile : 18230436640
         * money : null
         * nickname : null
         * password : 473344696F4685CAE5B5B3C354BC77BE
         * praiseNum : null
         * token : 002FA5C857C88978A9F20908ECAB9EC9
         * uid : 4831
         * userId : null
         * username : 18230436640
         */

        private Object age;
        private String appkey;
        private String appsecret;
        private String createtime;
        private Object email;
        private Object fans;
        private Object follow;
        private Object gender;
        private Object icon;
        private Object latitude;
        private Object longitude;
        private String mobile;
        private Object money;
        private Object nickname;
        private String password;
        private Object praiseNum;
        private String token;
        private int uid;
        private Object userId;
        private String username;

        public Object getAge() {
            return age;
        }

        public void setAge(Object age) {
            this.age = age;
        }

        public String getAppkey() {
            return appkey;
        }

        public void setAppkey(String appkey) {
            this.appkey = appkey;
        }

        public String getAppsecret() {
            return appsecret;
        }

        public void setAppsecret(String appsecret) {
            this.appsecret = appsecret;
        }

        public String getCreatetime() {
            return createtime;
        }

        public void setCreatetime(String createtime) {
            this.createtime = createtime;
        }

        public Object getEmail() {
            return email;
        }

        public void setEmail(Object email) {
            this.email = email;
        }

        public Object getFans() {
            return fans;
        }

        public void setFans(Object fans) {
            this.fans = fans;
        }

        public Object getFollow() {
            return follow;
        }

        public void setFollow(Object follow) {
            this.follow = follow;
        }

        public Object getGender() {
            return gender;
        }

        public void setGender(Object gender) {
            this.gender = gender;
        }

        public Object getIcon() {
            return icon;
        }

        public void setIcon(Object icon) {
            this.icon = icon;
        }

        public Object getLatitude() {
            return latitude;
        }

        public void setLatitude(Object latitude) {
            this.latitude = latitude;
        }

        public Object getLongitude() {
            return longitude;
        }

        public void setLongitude(Object longitude) {
            this.longitude = longitude;
        }

        public String getMobile() {
            return mobile;
        }

        public void setMobile(String mobile) {
            this.mobile = mobile;
        }

        public Object getMoney() {
            return money;
        }

        public void setMoney(Object money) {
            this.money = money;
        }

        public Object getNickname() {
            return nickname;
        }

        public void setNickname(Object nickname) {
            this.nickname = nickname;
        }

        public String getPassword() {
            return password;
        }

        public void setPassword(String password) {
            this.password = password;
        }

        public Object getPraiseNum() {
            return praiseNum;
        }

        public void setPraiseNum(Object praiseNum) {
            this.praiseNum = praiseNum;
        }

        public String getToken() {
            return token;
        }

        public void setToken(String token) {
            this.token = token;
        }

        public int getUid() {
            return uid;
        }

        public void setUid(int uid) {
            this.uid = uid;
        }

        public Object getUserId() {
            return userId;
        }

        public void setUserId(Object userId) {
            this.userId = userId;
        }

        public String getUsername() {
            return username;
        }

        public void setUsername(String username) {
            this.username = username;
        }
    }
}




public class UserBean {

    /**
     * msg : 登录成功
     * code : 0
     * data : {"age":null,"appkey":"5486f090fd382b68","appsecret":"AC74A96DDCCFA66691BC78F1C1FF0893","createtime":"2017-12-19T14:21:58","email":null,"fans":null,"follow":null,"gender":null,"icon":null,"latitude":null,"longitude":null,"mobile":"18230436640","money":null,"nickname":null,"password":"473344696F4685CAE5B5B3C354BC77BE","praiseNum":null,"token":"002FA5C857C88978A9F20908ECAB9EC9","uid":4831,"userId":null,"username":"18230436640"}
     */

    private String msg;
    private String code;
    private DataBean data;

    public String getMsg() {
        return msg;
    }

    public void setMsg(String msg) {
        this.msg = msg;
    }

    public String getCode() {
        return code;
    }

    public void setCode(String code) {
        this.code = code;
    }

    public DataBean getData() {
        return data;
    }

    public void setData(DataBean data) {
        this.data = data;
    }

    public static class DataBean {
        /**
         * age : null
         * appkey : 5486f090fd382b68
         * appsecret : AC74A96DDCCFA66691BC78F1C1FF0893
         * createtime : 2017-12-19T14:21:58
         * email : null
         * fans : null
         * follow : null
         * gender : null
         * icon : null
         * latitude : null
         * longitude : null
         * mobile : 18230436640
         * money : null
         * nickname : null
         * password : 473344696F4685CAE5B5B3C354BC77BE
         * praiseNum : null
         * token : 002FA5C857C88978A9F20908ECAB9EC9
         * uid : 4831
         * userId : null
         * username : 18230436640
         */

        private Object age;
        private String appkey;
        private String appsecret;
        private String createtime;
        private Object email;
        private Object fans;
        private Object follow;
        private Object gender;
        private Object icon;
        private Object latitude;
        private Object longitude;
        private String mobile;
        private Object money;
        private Object nickname;
        private String password;
        private Object praiseNum;
        private String token;
        private int uid;
        private Object userId;
        private String username;

        public Object getAge() {
            return age;
        }

        public void setAge(Object age) {
            this.age = age;
        }

        public String getAppkey() {
            return appkey;
        }

        public void setAppkey(String appkey) {
            this.appkey = appkey;
        }

        public String getAppsecret() {
            return appsecret;
        }

        public void setAppsecret(String appsecret) {
            this.appsecret = appsecret;
        }

        public String getCreatetime() {
            return createtime;
        }

        public void setCreatetime(String createtime) {
            this.createtime = createtime;
        }

        public Object getEmail() {
            return email;
        }

        public void setEmail(Object email) {
            this.email = email;
        }

        public Object getFans() {
            return fans;
        }

        public void setFans(Object fans) {
            this.fans = fans;
        }

        public Object getFollow() {
            return follow;
        }

        public void setFollow(Object follow) {
            this.follow = follow;
        }

        public Object getGender() {
            return gender;
        }

        public void setGender(Object gender) {
            this.gender = gender;
        }

        public Object getIcon() {
            return icon;
        }

        public void setIcon(Object icon) {
            this.icon = icon;
        }

        public Object getLatitude() {
            return latitude;
        }

        public void setLatitude(Object latitude) {
            this.latitude = latitude;
        }

        public Object getLongitude() {
            return longitude;
        }

        public void setLongitude(Object longitude) {
            this.longitude = longitude;
        }

        public String getMobile() {
            return mobile;
        }

        public void setMobile(String mobile) {
            this.mobile = mobile;
        }

        public Object getMoney() {
            return money;
        }

        public void setMoney(Object money) {
            this.money = money;
        }

        public Object getNickname() {
            return nickname;
        }

        public void setNickname(Object nickname) {
            this.nickname = nickname;
        }

        public String getPassword() {
            return password;
        }

        public void setPassword(String password) {
            this.password = password;
        }

        public Object getPraiseNum() {
            return praiseNum;
        }

        public void setPraiseNum(Object praiseNum) {
            this.praiseNum = praiseNum;
        }

        public String getToken() {
            return token;
        }

        public void setToken(String token) {
            this.token = token;
        }

        public int getUid() {
            return uid;
        }

        public void setUid(int uid) {
            this.uid = uid;
        }

        public Object getUserId() {
            return userId;
        }

        public void setUserId(Object userId) {
            this.userId = userId;
        }

        public String getUsername() {
            return username;
        }

        public void setUsername(String username) {
            this.username = username;
        }
    }
}



public class UserBean {

    /**
     * msg : 登录成功
     * code : 0
     * data : {"age":null,"appkey":"5486f090fd382b68","appsecret":"AC74A96DDCCFA66691BC78F1C1FF0893","createtime":"2017-12-19T14:21:58","email":null,"fans":null,"follow":null,"gender":null,"icon":null,"latitude":null,"longitude":null,"mobile":"18230436640","money":null,"nickname":null,"password":"473344696F4685CAE5B5B3C354BC77BE","praiseNum":null,"token":"002FA5C857C88978A9F20908ECAB9EC9","uid":4831,"userId":null,"username":"18230436640"}
     */

    private String msg;
    private String code;
    private DataBean data;

    public String getMsg() {
        return msg;
    }

    public void setMsg(String msg) {
        this.msg = msg;
    }

    public String getCode() {
        return code;
    }

    public void setCode(String code) {
        this.code = code;
    }

    public DataBean getData() {
        return data;
    }

    public void setData(DataBean data) {
        this.data = data;
    }

    public static class DataBean {
        /**
         * age : null
         * appkey : 5486f090fd382b68
         * appsecret : AC74A96DDCCFA66691BC78F1C1FF0893
         * createtime : 2017-12-19T14:21:58
         * email : null
         * fans : null
         * follow : null
         * gender : null
         * icon : null
         * latitude : null
         * longitude : null
         * mobile : 18230436640
         * money : null
         * nickname : null
         * password : 473344696F4685CAE5B5B3C354BC77BE
         * praiseNum : null
         * token : 002FA5C857C88978A9F20908ECAB9EC9
         * uid : 4831
         * userId : null
         * username : 18230436640
         */

        private Object age;
        private String appkey;
        private String appsecret;
        private String createtime;
        private Object email;
        private Object fans;
        private Object follow;
        private Object gender;
        private Object icon;
        private Object latitude;
        private Object longitude;
        private String mobile;
        private Object money;
        private Object nickname;
        private String password;
        private Object praiseNum;
        private String token;
        private int uid;
        private Object userId;
        private String username;

        public Object getAge() {
            return age;
        }

        public void setAge(Object age) {
            this.age = age;
        }

        public String getAppkey() {
            return appkey;
        }

        public void setAppkey(String appkey) {
            this.appkey = appkey;
        }

        public String getAppsecret() {
            return appsecret;
        }

        public void setAppsecret(String appsecret) {
            this.appsecret = appsecret;
        }

        public String getCreatetime() {
            return createtime;
        }

        public void setCreatetime(String createtime) {
            this.createtime = createtime;
        }

        public Object getEmail() {
            return email;
        }

        public void setEmail(Object email) {
            this.email = email;
        }

        public Object getFans() {
            return fans;
        }

        public void setFans(Object fans) {
            this.fans = fans;
        }

        public Object getFollow() {
            return follow;
        }

        public void setFollow(Object follow) {
            this.follow = follow;
        }

        public Object getGender() {
            return gender;
        }

        public void setGender(Object gender) {
            this.gender = gender;
        }

        public Object getIcon() {
            return icon;
        }

        public void setIcon(Object icon) {
            this.icon = icon;
        }

        public Object getLatitude() {
            return latitude;
        }

        public void setLatitude(Object latitude) {
            this.latitude = latitude;
        }

        public Object getLongitude() {
            return longitude;
        }

        public void setLongitude(Object longitude) {
            this.longitude = longitude;
        }

        public String getMobile() {
            return mobile;
        }

        public void setMobile(String mobile) {
            this.mobile = mobile;
        }

        public Object getMoney() {
            return money;
        }

        public void setMoney(Object money) {
            this.money = money;
        }

        public Object getNickname() {
            return nickname;
        }

        public void setNickname(Object nickname) {
            this.nickname = nickname;
        }

        public String getPassword() {
            return password;
        }

        public void setPassword(String password) {
            this.password = password;
        }

        public Object getPraiseNum() {
            return praiseNum;
        }

        public void setPraiseNum(Object praiseNum) {
            this.praiseNum = praiseNum;
        }

        public String getToken() {
            return token;
        }

        public void setToken(String token) {
            this.token = token;
        }

        public int getUid() {
            return uid;
        }

        public void setUid(int uid) {
            this.uid = uid;
        }

        public Object getUserId() {
            return userId;
        }

        public void setUserId(Object userId) {
            this.userId = userId;
        }

        public String getUsername() {
            return username;
        }

        public void setUsername(String username) {
            this.username = username;
        }
    }
}


model层中Util包里面OkHttp封装

package com.bwie.shopingcart.Model.utlis;

import android.os.Environment;

import java.io.File;
import java.util.HashMap;
import java.util.concurrent.TimeUnit;

import okhttp3.Cache;
import okhttp3.Callback;
import okhttp3.FormBody;
import okhttp3.OkHttpClient;
import okhttp3.Request;



public class OkHttp3Utlis {
    private static OkHttpClient okHttpClient=null;

    public OkHttp3Utlis() {
    }

    private static OkHttpClient getInstence(){
        if (okHttpClient==null){
            synchronized (OkHttp3Utlis.class){
                if (okHttpClient==null){
                    File file=new File(Environment.getDataDirectory(),"cache");
                    int cacheSize=10*1024*1024;
                    okHttpClient=new OkHttpClient.Builder()
                            .writeTimeout(50, TimeUnit.SECONDS)
                            .readTimeout(50,TimeUnit.SECONDS)
                            .connectTimeout(45,TimeUnit.SECONDS)
                            .cache(new Cache(file.getAbsoluteFile(),cacheSize))
                            .build();
                }
            }
        }
        return okHttpClient;
    }
    public static void dopost(String url, HashMap<String,String> params, Callback callback){
        OkHttpClient okHttpClient=getInstence();
        FormBody.Builder builder = new FormBody.Builder();
        for (String key:params.keySet()){
            builder.add(key,params.get(key));
        }
        Request build = new Request.Builder()
                .post(builder.build())
                .url(url)
                .build();
        okHttpClient.newCall(build).enqueue(callback);
    }
    public static void doget(String url,Callback callback){
        OkHttpClient okHttpClient=getInstence();
        Request build = new Request.Builder()
                .url(url)
                .build();
        okHttpClient.newCall(build).enqueue(callback);
    }
}


model层外面的model

package com.bwie.shopingcart.Model;

import com.bwie.shopingcart.Model.utlis.OkHttp3Utlis;
import com.bwie.shopingcart.Perstenter.inter.CartInterPst;

import java.io.IOException;
import java.util.HashMap;

import okhttp3.Call;
import okhttp3.Callback;
import okhttp3.Response;


public class CartMod {
    private  CartInterPst cartInterPst;

    public CartMod(CartInterPst cartInterPst) {
        this.cartInterPst=cartInterPst;
    }

    public void getdata(String s, int uid) {
        HashMap<String, String> params=new HashMap<>();
        params.put("uid",uid+"");
        params.put("source","android");
        OkHttp3Utlis.dopost(s, params, new Callback() {
            @Override
            public void onFailure(Call call, IOException e) {

            }

            @Override
            public void onResponse(Call call, Response response) throws IOException {
                  if (response.isSuccessful()){
                      String json = response.body().string();
                      cartInterPst.onsuccesspst(json);
                  }
            }
        });
    }
}


model层外面的model

package com.bwie.shopingcart.Model;

import com.bwie.shopingcart.Model.utlis.OkHttp3Utlis;
import com.bwie.shopingcart.Perstenter.inter.OrderListInterPst;

import java.io.IOException;
import java.util.HashMap;

import okhttp3.Call;
import okhttp3.Callback;
import okhttp3.Response;



public class OrderListMod {

    private  OrderListInterPst orderListInterPst;

    public OrderListMod(OrderListInterPst orderListInterPst) {
        this.orderListInterPst=orderListInterPst;
    }

    public void getorderlistdata(String url,int uid, int page,int keytoint) {
        HashMap<String, String> params=new HashMap<>();
        params.put("uid", String.valueOf(uid));
        params.put("page", String.valueOf(page));
        params.put("status", String.valueOf(keytoint));
        params.put("token","android");
        OkHttp3Utlis.dopost(url, params, new Callback() {
            @Override
            public void onFailure(Call call, IOException e) {

            }

            @Override
            public void onResponse(Call call, Response response) throws IOException {
               if (response.isSuccessful()){
                   String json = response.body().string();
                   orderListInterPst.onSuccessolP(json);
               }
            }
        });
    }

    public void getorderlistdatall(String s, int uid, int page) {
        HashMap<String, String> params=new HashMap<>();
        params.put("uid", String.valueOf(uid));
        params.put("page", String.valueOf(page));
        params.put("token","android");
        OkHttp3Utlis.dopost(s, params, new Callback() {
            @Override
            public void onFailure(Call call, IOException e) {

            }

            @Override
            public void onResponse(Call call, Response response) throws IOException {
                if (response.isSuccessful()){
                    String json = response.body().string();
                    orderListInterPst.onSuccessolpAll(json);
                }
            }
        });
    }
}


model层外面的model

package com.bwie.shopingcart.Model;

import com.bwie.shopingcart.Model.utlis.OkHttp3Utlis;
import com.bwie.shopingcart.Perstenter.inter.OrderInterPst;

import java.io.IOException;
import java.util.HashMap;

import okhttp3.Call;
import okhttp3.Callback;
import okhttp3.Response;



public class OrderMod {
    private  OrderInterPst orderInterPst;

    public OrderMod(OrderInterPst orderInterPst) {
        this.orderInterPst=orderInterPst;
    }

    public void getdata(String url, int uid, String price) {
        HashMap<String, String> params=new HashMap<>();
        params.put("uid", String.valueOf(uid));
        params.put("price",price);
        params.put("token","android");
        OkHttp3Utlis.dopost(url, params, new Callback() {
            @Override
            public void onFailure(Call call, IOException e) {

            }

            @Override
            public void onResponse(Call call, Response response) throws IOException {
                    if (response.isSuccessful()){
                        String json = response.body().string();
                        orderInterPst.onSuccess(json);
                    }
            }
        });
    }
}

model层外面的model

package com.bwie.shopingcart.Model;

import com.bwie.shopingcart.Model.utlis.OkHttp3Utlis;
import com.bwie.shopingcart.Perstenter.inter.UserInterPst;

import java.io.IOException;
import java.util.HashMap;

import okhttp3.Call;
import okhttp3.Callback;
import okhttp3.Response;



public class UserMod {

    private  UserInterPst userInterPst;

    public UserMod(UserInterPst userInterPst) {
        this.userInterPst=userInterPst;
    }

    public void getdata(String s, String mobile, String pwd, String android) {
        HashMap<String, String> params=new HashMap<>();
        params.put("mobile",mobile);
        params.put("password",pwd);
        params.put("token",android);
        OkHttp3Utlis.dopost(s, params, new Callback() {
            @Override
            public void onFailure(Call call, IOException e) {

            }

            @Override
            public void onResponse(Call call, Response response) throws IOException {
                    if (response.isSuccessful()){
                        String json = response.body().string();
                        userInterPst.omSuccessPst(json);
                    }
            }
        });
    }
}



presenter中的接口

package com.bwie.shopingcart.Perstenter.inter;



public interface CartInterPst {
    void onsuccesspst(String json);
}

presenter中的接口

package com.bwie.shopingcart.Perstenter.inter;



public interface OrderInterPst {
    void  onSuccess(String json);
}

presenter中的接口

package com.bwie.shopingcart.Perstenter.inter;



public interface OrderListInterPst {
    void onSuccessolP(String json);
    void onSuccessolpAll(String json);
}

presenter中的接口

package com.bwie.shopingcart.Perstenter.inter;



public interface UserInterPst {
    void omSuccessPst(String json);
}


presenter外面的pst

package com.bwie.shopingcart.Perstenter;

import com.bwie.shopingcart.Model.CartMod;
import com.bwie.shopingcart.Perstenter.inter.CartInterPst;
import com.bwie.shopingcart.View.inter.CartInterMain;


public class CartPst implements CartInterPst {

    private  CartInterMain interMain;
    private  CartMod cartMod;

    public CartPst(CartInterMain interMain) {
        this.interMain=interMain;
        cartMod = new CartMod(this);
    }

    public void getdata(String s, int uid) {
        cartMod.getdata(s,uid);
    }

    @Override
    public void onsuccesspst(String json) {
        interMain.onsuccessmain(json);
    }
}



presenter外面的pst

package com.bwie.shopingcart.Perstenter;

import com.bwie.shopingcart.Model.OrderListMod;
import com.bwie.shopingcart.Perstenter.inter.OrderListInterPst;
import com.bwie.shopingcart.View.inter.OrderListInterMain;



public class OrderListPst implements OrderListInterPst {

    private  OrderListInterMain orderInterMain;
    private  OrderListMod orderListMod;


    public OrderListPst(OrderListInterMain orderInterMain) {
        this.orderInterMain=orderInterMain;
        orderListMod = new OrderListMod(this);
    }

    public void getorderlistdata(String url,int uid, int page, int keytoint) {
        orderListMod.getorderlistdata(url,uid,page,keytoint);
    }

    @Override
    public void onSuccessolP(String json) {
        orderInterMain.onSuccessolM(json);
    }

    @Override
    public void onSuccessolpAll(String json) {
        orderInterMain.onSuccessolMAll(json);
    }

    public void getorderlistdataall(String s, int uid, int page) {
        orderListMod.getorderlistdatall(s,uid,page);
    }
}




presenter外面的pst


package com.bwie.shopingcart.Perstenter;

import com.bwie.shopingcart.Model.OrderMod;
import com.bwie.shopingcart.Perstenter.inter.OrderInterPst;
import com.bwie.shopingcart.View.inter.OrderInterMain;



public class OrderPst implements OrderInterPst {

    private  OrderMod orderMod;
    private  OrderInterMain interMain;

    public OrderPst(OrderInterMain interMain) {
        this.interMain=interMain;
        orderMod = new OrderMod(this);
    }

    public void getdata(String url, int uid, String price) {
        orderMod.getdata(url,uid,price);
    }

    @Override
    public void onSuccess(String json) {
        interMain.onSuccessM(json);
    }
}



presenter外面的pst

package com.bwie.shopingcart.Perstenter;

import com.bwie.shopingcart.Model.UserMod;
import com.bwie.shopingcart.Perstenter.inter.UserInterPst;
import com.bwie.shopingcart.View.inter.UserInterMain;



public class UserPst implements UserInterPst {

    private  UserMod userMod;
    private  UserInterMain interMain;

    public UserPst(UserInterMain interMain) {
        this.interMain=interMain;
        userMod = new UserMod(this);
    }

    public void getdata(String s, String mobile, String pwd,String android) {
        userMod.getdata(s,mobile,pwd,android);
    }

    @Override
    public void omSuccessPst(String json) {
        interMain.onSuccessMain(json);
    }
}


view中activity

package com.bwie.shopingcart.View.activity;

import android.animation.Animator;
import android.animation.AnimatorSet;
import android.animation.ObjectAnimator;
import android.content.Intent;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.util.DisplayMetrics;
import android.widget.ImageView;

import com.bwie.shopingcart.R;

import static android.R.attr.translationY;

public class AnimateActivity extends AppCompatActivity {

    private ImageView imageview;
    private int heightPixels;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_animate);
        DisplayMetrics metrics=new DisplayMetrics();
        heightPixels = metrics.heightPixels;
        initview();
        indata();
    }

    private void indata() {
        ObjectAnimator animatorwy=ObjectAnimator.ofFloat(imageview,"translationY",translationY,80,100,120,150,180,200,250,280,300,330,350,380,400,430,450,480,heightPixels/2,translationY);
        ObjectAnimator animatorxz=ObjectAnimator.ofFloat(imageview,"rotation",0f,360f);
        ObjectAnimator animatortm=ObjectAnimator.ofFloat(imageview,"alpha",0f,1f);
        ObjectAnimator animatorsf=ObjectAnimator.ofFloat(imageview,"scaleX",2f,1f,1f);
        AnimatorSet animatorSet=new AnimatorSet();
        animatorSet.play(animatorwy).with(animatorxz).with(animatortm).with(animatorsf);
        animatorSet.setDuration(3000);
        animatorSet.start();
        animatorSet.addListener(new Animator.AnimatorListener() {
            @Override
            public void onAnimationStart(Animator animator) {

            }

            @Override
            public void onAnimationEnd(Animator animator) {
                Intent intent=new Intent(AnimateActivity.this,UserActivity.class);
                startActivity(intent);
                finish();
            }

            @Override
            public void onAnimationCancel(Animator animator) {

            }

            @Override
            public void onAnimationRepeat(Animator animator) {

            }
        });
    }

    private void initview() {
        imageview = (ImageView) findViewById(R.id.animate_image);
    }
}

view层的Activit

package com.bwie.shopingcart.View.activity;

import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;
import android.view.View;
import android.widget.CheckBox;
import android.widget.ExpandableListView;
import android.widget.LinearLayout;
import android.widget.RelativeLayout;
import android.widget.TextView;

import com.bwie.shopingcart.Model.bean.CartBean;
import com.bwie.shopingcart.Model.bean.PriceAndNum;
import com.bwie.shopingcart.Perstenter.CartPst;
import com.bwie.shopingcart.R;
import com.bwie.shopingcart.View.adapater.MyExpandableAdapater;
import com.bwie.shopingcart.View.inter.CartInterMain;
import com.google.gson.Gson;

import java.text.DecimalFormat;

public class CartActivity extends AppCompatActivity implements View.OnClickListener,CartInterMain {

    private ExpandableListView expandablelistview;
    private CheckBox checkall;
    private TextView sumprice;
    private TextView jiesuan;
    private int uid;
    private CartPst cartPst;
    private LinearLayout bootm;
    private RelativeLayout progressbar;
    private CartBean cartBean;
    private MyExpandableAdapater adapater;
    private Handler handler=new Handler(){
        @Override
        public void handleMessage(Message msg) {
             if (msg.what==0){
                 PriceAndNum priceAndNum = (PriceAndNum) msg.obj;
                 sumprice.setText("合计:¥"+priceAndNum.getSumprice());
                 jiesuan.setText("去结算("+priceAndNum.getNum()+")");
             }
        }
    };
    private RelativeLayout cart_null;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_cart);
        initView();
        initdata();
    }

    @Override
    protected void onResume() {
        expandablelistview.setVisibility(View.GONE);
        bootm.setVisibility(View.GONE);
        progressbar.setVisibility(View.VISIBLE);
        super.onResume();
    }

    private void initdata() {
        cartPst.getdata("https://www.zhaoapi.cn/product/getCarts",uid);
    }

    private void initView() {
        expandablelistview = (ExpandableListView) findViewById(R.id.cart_expandableListview);
        checkall = (CheckBox) findViewById(R.id.cart_checkall);
        sumprice = (TextView) findViewById(R.id.cart_sumprice);
        jiesuan = (TextView) findViewById(R.id.cart_jiesuan);
        bootm = (LinearLayout) findViewById(R.id.cart_childitem_bootm);
        progressbar = (RelativeLayout) findViewById(R.id.cart_progressbar);
        cart_null = (RelativeLayout) findViewById(R.id.cart_null);
        expandablelistview.setGroupIndicator(null);
        checkall.setOnClickListener(this);
        jiesuan.setOnClickListener(this);
        cartPst = new CartPst(this);
        uid = getIntent().getIntExtra("uid", 0);
    }

    @Override
    public void onClick(View view) {
        switch (view.getId()){
            //点击全选
            case R.id.cart_checkall:
                adapater.allchildcheck(checkall.isChecked());
                break;
            //点击进行结算操作
            case R.id.cart_jiesuan:
                Intent intent=new Intent(CartActivity.this,OrderActivity.class);
                PriceAndNum priceAndConunt = getPriceAndConunt();
                intent.putExtra("price",priceAndConunt.getSumprice());
                intent.putExtra("num",priceAndConunt.getNum());
                intent.putExtra("uid",uid);
                startActivity(intent);
                finish();
                break;
        }
    }

    //购物车的数据
    @Override
    public void onsuccessmain(final String json) {
            runOnUiThread(new Runnable() {
                @Override
                public void run() {
                    Log.d("ccccccccccc","json:"+json);
                        if (json!=null||json!="null"){
                            Log.d("TAG","++++++++++++++++++"+json);
                            cartBean = new Gson().fromJson(json, CartBean.class);
                            if ("0".equals(cartBean.getCode())){
                                expandablelistview.setVisibility(View.VISIBLE);
                                bootm.setVisibility(View.VISIBLE);
                                progressbar.setVisibility(View.GONE);
                                //判断,,如果二级列表全部选中,则一级列表也全选
                                for (int i = 0; i< cartBean.getData().size(); i++){
                                    if (ischildallcheck(i)){
                                        cartBean.getData().get(i).setGroupCheck(true);
                                    }
                                }
                                //判断所有一级列表是否全部选中,如果全部选中则全选为选中状态
                                checkall.setChecked(isGroupAllCheck());

                                adapater = new MyExpandableAdapater(cartBean,CartActivity.this,uid,cartPst,progressbar,handler);
                                expandablelistview.setAdapter(adapater);
                                for (int i = 0; i< cartBean.getData().size(); i++){
                                    expandablelistview.expandGroup(i);
                                }
                                //总价和数量
                                adapater.senPriceAndConunt();
                            }else{
                                expandablelistview.setVisibility(View.GONE);
                                bootm.setVisibility(View.GONE);
                                progressbar.setVisibility(View.GONE);
                                cart_null.setVisibility(View.VISIBLE);
                            }
                        }
                }
            });
    }

    private boolean isGroupAllCheck() {
        for (int i=0;i<cartBean.getData().size();i++){
            if (!cartBean.getData().get(i).isGroupCheck()){
                return false;
            }
        }
        return true;
    }

    private boolean ischildallcheck(int i) {
        for (int j=0;j<cartBean.getData().get(i).getList().size();j++){
            if (cartBean.getData().get(i).getList().get(j).getSelected()==0){
                return false;
            }
        }
        return true;
    }
    public PriceAndNum getPriceAndConunt() {
        double price = 0;
        int num = 0;
        for (int i = 0; i < cartBean.getData().size(); i++) {
            for (int j = 0; j < cartBean.getData().get(i).getList().size(); j++) {
                if (cartBean.getData().get(i).getList().get(j).getSelected() == 1) {
                    price += cartBean.getData().get(i).getList().get(j).getNum() * cartBean.getData().get(i).getList().get(j).getBargainPrice();
                    num += cartBean.getData().get(i).getList().get(j).getNum();
                }
            }
        }
        DecimalFormat decimalFormat = new DecimalFormat("#.00");
        String sumprice = decimalFormat.format(price);
        PriceAndNum priceAndNum=new PriceAndNum(sumprice,num);
       return priceAndNum;

    }
}


view层的Activit

package com.bwie.shopingcart.View.activity;

import android.content.Intent;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;

import com.bwie.shopingcart.Model.bean.OrderBean;
import com.bwie.shopingcart.Perstenter.CartPst;
import com.bwie.shopingcart.Perstenter.OrderPst;
import com.bwie.shopingcart.R;
import com.bwie.shopingcart.View.inter.CartInterMain;
import com.bwie.shopingcart.View.inter.OrderInterMain;
import com.google.gson.Gson;

public class OrderActivity extends AppCompatActivity implements CartInterMain, View.OnClickListener,OrderInterMain {

    private CartPst cartPst;
    private int uid;
    private ListView orderlistview;
    private TextView orderprice;
    private TextView orderxiadan;
    private String price;
    private int num;
    private OrderPst orderPst;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_order);
        price = getIntent().getStringExtra("price");
        num = getIntent().getIntExtra("num", 0);
        uid = getIntent().getIntExtra("uid", 0);
        orderlistview = (ListView) findViewById(R.id.order_listview);
        orderprice = (TextView) findViewById(R.id.order_price);
        orderxiadan = (TextView) findViewById(R.id.order_xiadan);
        cartPst = new CartPst(this);
        initdata();
        orderxiadan.setOnClickListener(this);

    }
    private void initdata() {
        orderPst = new OrderPst(this);
        orderprice.setText("实付款:¥"+price);
        cartPst.getdata("https://www.zhaoapi.cn/product/getCarts",uid);
    }

    //订单信息
    @Override
    public void onsuccessmain(final String json) {
             runOnUiThread(new Runnable() {
                 @Override
                 public void run() {

                   /*  CartBean cartBean = new Gson().fromJson(json, CartBean.class);
                     List<CartBean.DataBean> grouplist = cartBean.getData();
                     List<CartBean.DataBean.ListBean> childlist=new ArrayList<>();
                     for (int i=0;i<grouplist.size();i++){
                         for (int j=0;j<grouplist.get(i).getList().size();j++){
                             childlist.add(grouplist.get(i).getList().get(j));
                         }
                     }
                     Log.d("ooooooooooooo","ordergroupsize:"+grouplist.size());
                     Log.d("ooooooooooooo","orderchildsize:"+childlist.size());
                     MyOrderListviewAdapater myOrderListviewAdapater = new MyOrderListviewAdapater(childlist, OrderActivity.this);
                     orderlistview.setAdapter(myOrderListviewAdapater);*/
                 }
             });
    }

    //下单
    @Override
    public void onClick(View view) {
          //https://www.zhaoapi.cn/product/createOrder?uid=71&price=99.99
        orderPst.getdata("https://www.zhaoapi.cn/product/createOrder",uid,price);
    }

    //是否创建订单成功
    @Override
    public void onSuccessM(final String json) {
             runOnUiThread(new Runnable() {
                 @Override
                 public void run() {
                     OrderBean orderBean = new Gson().fromJson(json, OrderBean.class);
                     if ("订单创建成功".equals(orderBean.getMsg())){
                         Toast.makeText(OrderActivity.this,"订单创建成功",Toast.LENGTH_SHORT).show();
                         Intent intent=new Intent(OrderActivity.this,OrderListActivity.class);
                         startActivity(intent);
                         finish();
                     }
                 }
             });
    }
}


view层的Activit

package com.bwie.shopingcart.View.activity;

import android.os.Bundle;
import android.support.design.widget.TabLayout;
import android.support.v4.view.ViewPager;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.TextView;

import com.bwie.shopingcart.R;
import com.bwie.shopingcart.View.faragment.FragmentorderList;

import java.util.ArrayList;
import java.util.List;

public class OrderListActivity extends AppCompatActivity implements View.OnClickListener {
 private List<String> tablist=new ArrayList<>();
    private TabLayout tab;
    private ViewPager viewpager;
    private TextView quanbu;
    private TextView daizhifu;
    private TextView yizhifu;
    private TextView yiquxiao;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_order_list);
        quanbu = (TextView) findViewById(R.id.tab_hehe_quanbu);
        daizhifu = (TextView) findViewById(R.id.tab_hehe_daizhifu);
        yizhifu = (TextView) findViewById(R.id.tab_hehe_yizhifu);
        yiquxiao = (TextView) findViewById(R.id.tab_hehe_yiquxiao);
        quanbu.setOnClickListener(this);
        daizhifu.setOnClickListener(this);
        yizhifu.setOnClickListener(this);
        yiquxiao.setOnClickListener(this);
        String quanbuname = quanbu.getText().toString();
        goFragment(quanbuname);
    }

    @Override
    public void onClick(View view) {
        switch (view.getId()){
            case R.id.tab_hehe_quanbu:
                String quanbuname = quanbu.getText().toString();
                goFragment(quanbuname);
                break;
            case R.id.tab_hehe_daizhifu:
                String daizhifuname = daizhifu.getText().toString();
                goFragment(daizhifuname);
                break;
            case R.id.tab_hehe_yizhifu:
                String yizhifuname = yizhifu.getText().toString();
                goFragment(yizhifuname);
                break;
            case R.id.tab_hehe_yiquxiao:
                String yiquxiaoname = yiquxiao.getText().toString();
                goFragment(yiquxiaoname);
                break;
        }
    }

    private void goFragment(String name) {
        FragmentorderList fragmentorderList=new FragmentorderList();
        Bundle build=new Bundle();
        build.putString("key",name);
        fragmentorderList.setArguments(build);
       getSupportFragmentManager().beginTransaction().replace(R.id.orderlist_framelayout,fragmentorderList).commit();
    }
}


view层的Activit

package com.bwie.shopingcart.View.activity;

import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.CheckBox;
import android.widget.EditText;
import android.widget.TextView;

import com.bwie.shopingcart.Model.bean.UserBean;
import com.bwie.shopingcart.Perstenter.UserPst;
import com.bwie.shopingcart.R;
import com.bwie.shopingcart.View.inter.UserInterMain;
import com.google.gson.Gson;

public class UserActivity extends AppCompatActivity implements View.OnClickListener,UserInterMain {


    private EditText phone;
    private EditText password;
    private TextView gotocart;
    private UserPst userPst;
    private SharedPreferences mydata;
    private CheckBox user_checkbox;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        phone = (EditText) findViewById(R.id.user_phone);
        password = (EditText) findViewById(R.id.user_password);
        gotocart = (TextView) findViewById(R.id.user_gotocart);
        user_checkbox = (CheckBox) findViewById(R.id.user_checkbox);
        mydata = getSharedPreferences("mydata", MODE_PRIVATE);
        gotocart.setOnClickListener(this);
        userPst = new UserPst(this);
        initdata();

    }

    private void initdata() {
        boolean checked = mydata.getBoolean("checked", false);
        String username = mydata.getString("username", "");
        String passwords = mydata.getString("password", "");
        phone.setText(username);
        if (checked){
            user_checkbox.setChecked(checked);
            password.setText(passwords);

        }
    }

    @Override
    public void onClick(View view) {
        String mobile = phone.getText().toString();
        String pwd = password.getText().toString();
        userPst.getdata("https://www.zhaoapi.cn/user/login",mobile,pwd,"android");
    }

    @Override
    public void onSuccessMain(final String json) {
             runOnUiThread(new Runnable() {
                 @Override
                 public void run() {
                     UserBean bean = new Gson().fromJson(json, UserBean.class);
                    // Toast.makeText(UserActivity.this,bean.getMsg(),Toast.LENGTH_SHORT).show();
                     int uid1 = bean.getData().getUid();
                     if ("登录成功".equals(bean.getMsg())){
                         boolean checked = user_checkbox.isChecked();
                         String username = phone.getText().toString();
                         String pwd = password.getText().toString();
                         SharedPreferences.Editor edit = mydata.edit();
                         edit.putBoolean("checked",checked);
                         edit.putString("username",username);
                         edit.putString("password",pwd);
                         edit.putInt("uid",uid1);
                         edit.commit();
                         int uid = bean.getData().getUid();
                         Intent intent=new Intent(UserActivity.this,CartActivity.class);
                         intent.putExtra("uid",uid);
                         startActivity(intent);
                         finish();
                     }
                 }
             });
    }
}




view层的adapter

package com.bwie.shopingcart.View.adapater;

import android.content.Context;
import android.os.Handler;
import android.os.Message;
import android.util.Log;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseExpandableListAdapter;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.ImageView;
import android.widget.RelativeLayout;
import android.widget.TextView;
import android.widget.Toast;

import com.bumptech.glide.Glide;
import com.bwie.shopingcart.Model.bean.CartBean;
import com.bwie.shopingcart.Model.bean.PriceAndNum;
import com.bwie.shopingcart.Model.utlis.OkHttp3Utlis;
import com.bwie.shopingcart.Perstenter.CartPst;
import com.bwie.shopingcart.R;

import java.io.IOException;
import java.text.DecimalFormat;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;

import okhttp3.Call;
import okhttp3.Callback;
import okhttp3.Response;



public class MyExpandableAdapater extends BaseExpandableListAdapter{
    private  Handler handler;
    private  CartPst cartPst;
    private  RelativeLayout progressbar;
    private  int uid;
    private int childpostion=0;
    private int index=0;

    CartBean cartBean;
    Context context;
    private int size;
    private int childSize;

    public MyExpandableAdapater(CartBean cartBean, Context context, int uid, CartPst cartPst, RelativeLayout progressbar, Handler handler) {
        this.cartBean = cartBean;
        this.context = context;
        this.uid=uid;
        this.cartPst=cartPst;
        this.progressbar=progressbar;
        this.handler=handler;

    }

    //返回一级列表总条目
    @Override
    public int getGroupCount() {
        return cartBean.getData().size();
    }

    //返回二级列表总条目
    @Override
    public int getChildrenCount(int i) {
        return cartBean.getData().get(i).getList().size();
    }

    //获取一级列表item
    @Override
    public Object getGroup(int i) {
        return cartBean.getData().get(i);
    }

    //获取二级列表item
    @Override
    public Object getChild(int i, int i1) {
        return cartBean.getData().get(i).getList().get(i1);
    }

    //获取一级列表的id
    @Override
    public long getGroupId(int i) {
        return i;
    }

    //获取二级列表的id
    @Override
    public long getChildId(int i, int i1) {
        return i1;
    }

    //设置true数据源可刷新
    @Override
    public boolean hasStableIds() {
        return true;
    }

    //一级列表视图
    @Override
    public View getGroupView(final int i, boolean b, View view, ViewGroup viewGroup) {
        final ViewHoloderGroup holoderGroup;
        if (view==null){
            view=View.inflate(context, R.layout.layout_cart_groupitem,null);
            holoderGroup=new ViewHoloderGroup();
            holoderGroup.cart_groupitem_checked=view.findViewById(R.id.cart_groupitem_checkbox);
            holoderGroup.cart_groupitem_title=view.findViewById(R.id.cart_groupitem_title);
           view.setTag(holoderGroup);
        }else{
            holoderGroup= (ViewHoloderGroup) view.getTag();
        }
        //赋值
        holoderGroup.cart_groupitem_title.setText(cartBean.getData().get(i).getSellerName());
        holoderGroup.cart_groupitem_checked.setChecked(cartBean.getData().get(i).isGroupCheck());
        holoderGroup.cart_groupitem_checked.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                CartBean.DataBean dataBean = cartBean.getData().get(i);
                size = dataBean.getList().size();
                progressbar.setVisibility(View.VISIBLE);
                updataGroupcheck(holoderGroup.cart_groupitem_checked.isChecked(),dataBean);
            }
        });
        return view;
    }

    //通过点击一级列表改变二级列表的状态
    private void updataGroupcheck(final boolean checked, final CartBean.DataBean list) {
        CartBean.DataBean.ListBean listBean = list.getList().get(childpostion);
        //https://www.zhaoapi.cn/product/updateCarts?uid=71&sellerid=1&pid=1&selected=0&num=10
        HashMap<String, String> params=new HashMap<>();
        params.put("uid", String.valueOf(uid));
        params.put("sellerid", String.valueOf(listBean.getSellerid()));
        params.put("pid", String.valueOf(listBean.getPid()));
        params.put("selected",String.valueOf(checked ? 1:0));
        params.put("num", String.valueOf(listBean.getNum()));
        params.put("token","android");
        OkHttp3Utlis.dopost("https://www.zhaoapi.cn/product/updateCarts", params, new Callback() {
            @Override
            public void onFailure(Call call, IOException e) {

            }

            @Override
            public void onResponse(Call call, Response response) throws IOException {
                childpostion+=1;
                if (childpostion<size){
                    updataGroupcheck(checked,list);
                }else{
                    cartPst.getdata("https://www.zhaoapi.cn/product/getCarts",uid);
                }
            }
        });

    }

    //二级列表视图
    @Override
    public View getChildView(final int i, final int i1, boolean b, View view, ViewGroup viewGroup) {
        ViewHoloderChild holoderChild;
        if (view==null){
            view=View.inflate(context,R.layout.layout_cart_childitem,null);
            holoderChild=new ViewHoloderChild();
            holoderChild.cart_childitem_check=view.findViewById(R.id.cart_childitem_checkbox);
            holoderChild.cart_childitem_imageview=view.findViewById(R.id.cart_childitem_imageview);
            holoderChild.cart_childitem_title=view.findViewById(R.id.cart_childitem_title);
            holoderChild.cart_childitem_price=view.findViewById(R.id.cart_childitem_price);
            holoderChild.cart_childitem_jian=view.findViewById(R.id.cart_childitem_jian);
            holoderChild.cart_childitem_number=view.findViewById(R.id.cart_childitem_number);
            holoderChild.cart_childitem_jia=view.findViewById(R.id.cart_childitem_jia);
            holoderChild.cart_childitem_btndel=view.findViewById(R.id.cart_childitem_btndel);
            view.setTag(holoderChild);
        }else{
           holoderChild= (ViewHoloderChild) view.getTag();

        }
        //赋值
        final CartBean.DataBean.ListBean listBean = cartBean.getData().get(i).getList().get(i1);
        holoderChild.cart_childitem_check.setChecked(cartBean.getData().get(i).getList().get(i1).getSelected()==0?false:true);
        Glide.with(context).load(cartBean.getData().get(i).getList().get(i1).getImages().split("\\|")[0]).into(holoderChild.cart_childitem_imageview);
        holoderChild.cart_childitem_title.setText(cartBean.getData().get(i).getList().get(i1).getTitle());
        holoderChild.cart_childitem_price.setText("价格:¥"+cartBean.getData().get(i).getList().get(i1).getBargainPrice());
        holoderChild.cart_childitem_number.setText(""+cartBean.getData().get(i).getList().get(i1).getNum());
        holoderChild.cart_childitem_check.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                progressbar.setVisibility(View.VISIBLE);
                CartBean.DataBean.ListBean listBean = cartBean.getData().get(i).getList().get(i1);
                updatechildcheck(listBean);
            }
        });
        //数量加一
        holoderChild.cart_childitem_jia.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                progressbar.setVisibility(View.VISIBLE);
                updatachildnum(listBean,true);
            }


        });
        //数量减一
        holoderChild.cart_childitem_jian.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                int num = listBean.getNum();
                if (num==1){
                    return;
                }
                progressbar.setVisibility(View.VISIBLE);
                updatachildnum(listBean,false);
            }
        });
        //删除
        holoderChild.cart_childitem_btndel.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                if (listBean.getSelected()==1){
                    progressbar.setVisibility(View.VISIBLE);
                    deletechilditem(listBean);
                }else{
                    Toast.makeText(context,"请选择",Toast.LENGTH_SHORT).show();
                    return;
                }

            }
        });
        return view;
    }

    //删除
    private void deletechilditem(CartBean.DataBean.ListBean listBean) {
        //https://www.zhaoapi.cn/product/deleteCart?uid=72&pid=1
        HashMap<String, String> params=new HashMap<>();
        params.put("uid", String.valueOf(uid));
        params.put("pid", String.valueOf(listBean.getPid()));
        params.put("token","android");
        OkHttp3Utlis.dopost("https://www.zhaoapi.cn/product/deleteCart", params, new Callback() {
            @Override
            public void onFailure(Call call, IOException e) {

            }

            @Override
            public void onResponse(Call call, Response response) throws IOException {
                cartPst.getdata("https://www.zhaoapi.cn/product/getCarts",uid);
            }
        });
    }

    private void updatachildnum(CartBean.DataBean.ListBean listBean, boolean b) {
        //https://www.zhaoapi.cn/product/updateCarts?uid=71&sellerid=1&pid=1&selected=0&num=10
        HashMap<String, String> params=new HashMap<>();
        params.put("uid", String.valueOf(uid));
        params.put("sellerid", String.valueOf(listBean.getSellerid()));
        params.put("pid", String.valueOf(listBean.getPid()));
        params.put("selected",String.valueOf(listBean.getSelected()));
        if (b){
            params.put("num", String.valueOf(listBean.getNum()+1));
        }else{
            params.put("num", String.valueOf(listBean.getNum()-1));
        }
        params.put("token","android");
        OkHttp3Utlis.dopost("https://www.zhaoapi.cn/product/updateCarts", params, new Callback() {
            @Override
            public void onFailure(Call call, IOException e) {

            }

            @Override
            public void onResponse(Call call, Response response) throws IOException {
                cartPst.getdata("https://www.zhaoapi.cn/product/getCarts",uid);
            }
        });
    }


    //改变二级列表的选中状态的操作方法
    private void updatechildcheck(CartBean.DataBean.ListBean listBean) {
        //https://www.zhaoapi.cn/product/updateCarts?uid=71&sellerid=1&pid=1&selected=0&num=10
        Log.d("aaaaaaaaaaaaaaaa","aaaaaaaaaaaaaaaaauid:"+uid);
        HashMap<String, String> params=new HashMap<>();
        params.put("uid", String.valueOf(uid));
        params.put("sellerid", String.valueOf(listBean.getSellerid()));
        params.put("pid", String.valueOf(listBean.getPid()));
        params.put("selected",String.valueOf(listBean.getSelected()==0?1:0));
        params.put("num", String.valueOf(listBean.getNum()));
        params.put("token","android");
        OkHttp3Utlis.dopost("https://www.zhaoapi.cn/product/updateCarts", params, new Callback() {
            @Override
            public void onFailure(Call call, IOException e) {

            }

            @Override
            public void onResponse(Call call, Response response) throws IOException {
                 cartPst.getdata("https://www.zhaoapi.cn/product/getCarts",uid);
            }
        });
    }

    //最后一项是否可选
    @Override
    public boolean isChildSelectable(int i, int i1) {
        return true;
    }

    //点击进行全选
    public void allchildcheck(boolean checked) {
        List<CartBean.DataBean.ListBean> sumchildlist =new ArrayList<>();
        Log.d("aaaaaaaaaaaaaaaaa","groupsize:"+cartBean.getData().size());
        for (int i=0;i<cartBean.getData().size();i++){
            for (int j=0;j<cartBean.getData().get(j).getList().size();j++){
                sumchildlist.addAll(cartBean.getData().get(i).getList());
            }
        }
        progressbar.setVisibility(View.VISIBLE);
        childSize = sumchildlist.size();
        Log.d("aaaaaaaaaaaaaaaaa","childsize:"+childSize);
        updataallchildcheck(sumchildlist,checked);

    }

    //全选
    private void updataallchildcheck(final List<CartBean.DataBean.ListBean> sumchildlist, final boolean checked) {
        final CartBean.DataBean.ListBean listBean = sumchildlist.get(index);
        //https://www.zhaoapi.cn/product/updateCarts?uid=71&sellerid=1&pid=1&selected=0&num=10
        HashMap<String, String> params=new HashMap<>();
        params.put("uid", String.valueOf(uid));
        params.put("sellerid", String.valueOf(listBean.getSellerid()));
        params.put("pid", String.valueOf(listBean.getPid()));
        params.put("selected",String.valueOf(checked ? 1:0));
        params.put("num", String.valueOf(listBean.getNum()));
        params.put("token","android");
        OkHttp3Utlis.dopost("https://www.zhaoapi.cn/product/updateCarts", params, new Callback() {
            @Override
            public void onFailure(Call call, IOException e) {

            }

            @Override
            public void onResponse(Call call, Response response) throws IOException {
                index+=1;
                if (index<childSize){
                    updataallchildcheck(sumchildlist,checked);
                }else{
                    cartPst.getdata("https://www.zhaoapi.cn/product/getCarts",uid);
                }
            }
        });
    }

    //总价和数量
    public void senPriceAndConunt() {
        double price=0;
        int num=0;
        for (int i=0;i<cartBean.getData().size();i++){
            for (int j=0;j<cartBean.getData().get(i).getList().size();j++){
                if (cartBean.getData().get(i).getList().get(j).getSelected()==1){
                    price+=cartBean.getData().get(i).getList().get(j).getNum()*cartBean.getData().get(i).getList().get(j).getBargainPrice();
                    num+=cartBean.getData().get(i).getList().get(j).getNum();
                }
            }
        }
        DecimalFormat decimalFormat=new DecimalFormat("#.00");
        String sumprice = decimalFormat.format(price);
        PriceAndNum priceAndNum = new PriceAndNum(sumprice, num);
        Message msg=Message.obtain();
        msg.what=0;
        msg.obj=priceAndNum;
        handler.sendMessage(msg);

    }

    class  ViewHoloderGroup{
        CheckBox cart_groupitem_checked;
        TextView cart_groupitem_title;
    }
    class  ViewHoloderChild{
        CheckBox cart_childitem_check;
        ImageView cart_childitem_imageview;
        TextView cart_childitem_title;
        TextView cart_childitem_price;
        TextView cart_childitem_jian;
        TextView cart_childitem_number;
        TextView cart_childitem_jia;
        Button cart_childitem_btndel;
    }
}





view层的adapter

package com.bwie.shopingcart.View.adapater;

import android.content.Context;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;

import com.bumptech.glide.Glide;
import com.bwie.shopingcart.Model.bean.CartBean;
import com.bwie.shopingcart.R;

import java.util.List;



public class MyOrderListviewAdapater extends BaseAdapter {
    List<CartBean.DataBean.ListBean> childlist;
    Context context;

    public MyOrderListviewAdapater(List<CartBean.DataBean.ListBean> childlist, Context context) {
        this.childlist = childlist;
        this.context = context;
    }

    @Override
    public int getCount() {
        return childlist.size();
    }

    @Override
    public Object getItem(int i) {
        return childlist.get(i);
    }

    @Override
    public long getItemId(int i) {
        return i;
    }

    @Override
    public View getView(int i, View view, ViewGroup viewGroup) {
        ViewHoloder holoder;
        if (view==null){
            view=View.inflate(context, R.layout.layout_order_listviewitem,null);
            holoder=new ViewHoloder();
            holoder.order_item_imageview=view.findViewById(R.id.order_item_imageview);
            holoder.order_item_title=view.findViewById(R.id.order_item_title);
            holoder.order_item_price=view.findViewById(R.id.order_item_price);
            view.setTag(holoder);
        }else{
            holoder= (ViewHoloder) view.getTag();
        }
        if (childlist.get(i).getSelected()==1){
            Glide.with(context).load(childlist.get(i).getImages().split("\\|")[0]).into(holoder.order_item_imageview);
            holoder.order_item_title.setText(childlist.get(i).getTitle());
            holoder.order_item_price.setText("价格:¥"+childlist.get(i).getBargainPrice()+"×"+childlist.get(i).getNum());
         }
        return view;
    }
    class ViewHoloder{
        ImageView order_item_imageview;
        TextView  order_item_title;
        TextView  order_item_price;
    }
}





view层的adapter

package com.bwie.shopingcart.View.adapater;

import android.content.Context;
import android.graphics.Color;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.RelativeLayout;

import com.bwie.shopingcart.Model.bean.OrderListBean;
import com.bwie.shopingcart.Model.utlis.OkHttp3Utlis;
import com.bwie.shopingcart.Perstenter.OrderListPst;
import com.bwie.shopingcart.R;
import com.bwie.shopingcart.View.holoder.MyOrderListXrecyclerHoloder;

import java.io.IOException;
import java.util.HashMap;
import java.util.List;

import okhttp3.Call;
import okhttp3.Callback;
import okhttp3.Response;


public class MyOrderListXrecyclerAdapater extends RecyclerView.Adapter<MyOrderListXrecyclerHoloder>{
    private  OrderListPst orderListPst;
    private  RelativeLayout pregresbar;
    private  int uid;
    private  int keytoint;

    List<OrderListBean.DataBean> list;
    Context context;

    public MyOrderListXrecyclerAdapater(List<OrderListBean.DataBean> list, Context context, RelativeLayout pregresbar, int uid, int keytoint, OrderListPst orderListPst) {
        this.list = list;
        this.context = context;
        this.pregresbar=pregresbar;
        this.uid=uid;
        this.keytoint=keytoint;
        this.orderListPst=orderListPst;
    }

    @Override
    public MyOrderListXrecyclerHoloder onCreateViewHolder(ViewGroup parent, int viewType) {
        View view= LayoutInflater.from(context).inflate(R.layout.layout_orderlist_fragment_xrecycleritem,parent,false);
        MyOrderListXrecyclerHoloder holoder=new MyOrderListXrecyclerHoloder(view);
        return holoder;
    }

    @Override
    public void onBindViewHolder(MyOrderListXrecyclerHoloder holder, final int position) {
               int status = list.get(position).getStatus();
                holder.title.setText(list.get(position).getTitle());
                holder.price.setText("价格:¥"+list.get(position).getPrice());
                holder.time.setText(list.get(position).getCreatetime());
        if (status==0){
            holder.status.setText("待支付");
            holder.status.setTextColor(Color.RED);
            holder.quxdd.setText("取消订单");
            holder.price.setTextColor(Color.RED);
            holder.zhifu.setText("去支付");
          }else if (status==1){
            holder.status.setText("已完成");
            holder.status.setTextColor(Color.RED);
            holder.quxdd.setText("查看订单");
            holder.price.setTextColor(Color.RED);
           }else  if (status==2){
            holder.status.setText("已取消");
            holder.status.setTextColor(Color.RED);
            holder.quxdd.setText("查看订单");
            holder.price.setTextColor(Color.RED);
        }
        holder.zhifu.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                pregresbar.setVisibility(View.VISIBLE);
                updatastatus(position);
            }
        });
        //首先判断是不是取消订单
        String s = holder.quxdd.getText().toString();
        if ("取消订单".equals(s)){
            holder.quxdd.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {
                    pregresbar.setVisibility(View.VISIBLE);
                    updatastatusqu(position);
                }
            });
        }
    }

    //取消订单
    private void updatastatusqu(int position) {
        //https://www.zhaoapi.cn/product/updateOrder?uid=71&status=1&orderId=1
        HashMap<String, String> params=new HashMap<>();
        params.put("uid", String.valueOf(uid));
        params.put("status", String.valueOf(2));
        params.put("orderId", String.valueOf(list.get(position).getOrderid()));
        params.put("token","android");
        OkHttp3Utlis.dopost("https://www.zhaoapi.cn/product/updateOrder", params, new Callback() {
            @Override
            public void onFailure(Call call, IOException e) {

            }

            @Override
            public void onResponse(Call call, Response response) throws IOException {

              orderListPst.getorderlistdata("https://www.zhaoapi.cn/product/getOrders",uid,1,0);

            }
        });
    }

    //去支付
    private void updatastatus(int position) {
        //https://www.zhaoapi.cn/product/updateOrder?uid=71&status=1&orderId=1
        HashMap<String, String> params=new HashMap<>();
        params.put("uid", String.valueOf(uid));
        params.put("status", String.valueOf(1));
        params.put("orderId", String.valueOf(list.get(position).getOrderid()));
        params.put("token","android");
        OkHttp3Utlis.dopost("https://www.zhaoapi.cn/product/updateOrder", params, new Callback() {
            @Override
            public void onFailure(Call call, IOException e) {

            }

            @Override
            public void onResponse(Call call, Response response) throws IOException {
                orderListPst.getorderlistdata("https://www.zhaoapi.cn/product/getOrders",uid,1,1);
            }
        });

    }

    @Override
    public int getItemCount() {
        return list.size();
    }
}


view层的fragment

package com.bwie.shopingcart.View.faragment;

import android.content.SharedPreferences;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.support.v7.widget.LinearLayoutManager;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.RelativeLayout;
import android.widget.Toast;

import com.bwie.shopingcart.Model.bean.OrderListBean;
import com.bwie.shopingcart.Perstenter.OrderListPst;
import com.bwie.shopingcart.R;
import com.bwie.shopingcart.View.adapater.MyOrderListXrecyclerAdapater;
import com.bwie.shopingcart.View.inter.OrderListInterMain;
import com.google.gson.Gson;
import com.jcodecraeer.xrecyclerview.XRecyclerView;

import java.util.ArrayList;
import java.util.List;

import static android.content.Context.MODE_PRIVATE;



public class FragmentorderList extends Fragment implements OrderListInterMain, XRecyclerView.LoadingListener {

    private XRecyclerView xrecyclerview;
    private OrderListPst orderListPst;
    private SharedPreferences mydata;
    private int page=1;
    private List<OrderListBean.DataBean> sumlist=new ArrayList<>();
    private int keytoint;
    private int uid;
    private RelativeLayout pregresbar;

    @Nullable
    @Override
    public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
        View view=inflater.inflate(R.layout.layout_fragmentorderlist,container,false);
        xrecyclerview = (XRecyclerView) view.findViewById(R.id.orderlist_fragment_xrecyclerview);
        pregresbar = (RelativeLayout) view.findViewById(R.id.orderlist_jiazai);
        mydata = getActivity().getSharedPreferences("mydata", MODE_PRIVATE);
        orderListPst = new OrderListPst(this);
        return view;
    }

    @Override
    public void onActivityCreated(@Nullable Bundle savedInstanceState) {
        super.onActivityCreated(savedInstanceState);
        xrecyclerview.setLoadingMoreEnabled(true);
        xrecyclerview.setLoadingListener(this);
       String key = getArguments().getString("key");
        keytoint = keytoint(key);
        uid = mydata.getInt("uid", 0);
        initdata(uid, keytoint);
    }

    private void initdata(int uid,int keytoint) {
        if (keytoint==3){
            orderListPst.getorderlistdataall("https://www.zhaoapi.cn/product/getOrders",uid,page);
        }else{
            //https://www.zhaoapi.cn/product/getOrders?uid=71
            orderListPst.getorderlistdata("https://www.zhaoapi.cn/product/getOrders",uid,page,keytoint);
        }


    }

    private int keytoint(String key) {
        if ("全部".equals(key)){
            return 3;
        }else if ("待支付".equals(key)){
            return 0;
        }else if ("已支付".equals(key)){
            return 1;
        }else if ("已取消".equals(key)){
            return 2;
        }
        return 0;
    }

    @Override
    public void onResume() {
        pregresbar.setVisibility(View.VISIBLE);
        super.onResume();
    }

    //查询订单列表的回调方法
    @Override
    public void onSuccessolM(final String json) {
        getActivity().runOnUiThread(new Runnable() {
            @Override
            public void run() {
                OrderListBean listBean = new Gson().fromJson(json, OrderListBean.class);
                List<OrderListBean.DataBean> list = listBean.getData();
                if (sumlist.size()>0){
                    sumlist.addAll(sumlist.size()-1,list);
                }else{
                    sumlist.addAll(list);
                }
                pregresbar.setVisibility(View.GONE);
                xrecyclerview.setLayoutManager(new LinearLayoutManager(getContext(),LinearLayoutManager.VERTICAL,false));
                MyOrderListXrecyclerAdapater adapater = new MyOrderListXrecyclerAdapater(sumlist, getActivity(),pregresbar,uid,keytoint,orderListPst);
                xrecyclerview.setAdapter(adapater);
            }
        });
    }

    //查询全部
    @Override
    public void onSuccessolMAll(final String json) {
        getActivity().runOnUiThread(new Runnable() {
            @Override
            public void run() {
                OrderListBean listBean = new Gson().fromJson(json, OrderListBean.class);
                List<OrderListBean.DataBean> list = listBean.getData();
                if (sumlist.size()>0){
                    sumlist.addAll(sumlist.size()-1,list);
                }else{
                    sumlist.addAll(list);
                }
                pregresbar.setVisibility(View.GONE);
                xrecyclerview.setLayoutManager(new LinearLayoutManager(getContext(),LinearLayoutManager.VERTICAL,false));
                MyOrderListXrecyclerAdapater adapater = new MyOrderListXrecyclerAdapater(sumlist, getActivity(),pregresbar,uid,keytoint,orderListPst);
                xrecyclerview.setAdapter(adapater);
            }
        });
    }

    //刷新
    @Override
    public void onRefresh() {
        sumlist.clear();
        initdata(uid,keytoint);
        xrecyclerview.refreshComplete();
    }

    //加载更多
    @Override
    public void onLoadMore() {
        page+=1;
        Toast.makeText(getContext(),"第"+page+"页",Toast.LENGTH_SHORT).show();
        initdata(uid,keytoint);
        xrecyclerview.refreshComplete();
    }
}


view层中holoder

package com.bwie.shopingcart.View.holoder;

import android.support.v7.widget.RecyclerView;
import android.view.View;
import android.widget.TextView;

import com.bwie.shopingcart.R;


public class MyOrderListXrecyclerHoloder extends RecyclerView.ViewHolder{

    public TextView title;
    public TextView price;
    public TextView time;
    public TextView status;
    public TextView quxdd;
    public TextView zhifu;

    public MyOrderListXrecyclerHoloder(View itemView) {
        super(itemView);
        title = itemView.findViewById(R.id.orderlist_item_title);
        price = itemView.findViewById(R.id.orderlist_item_price);
        time = itemView.findViewById(R.id.orderlist_item_time);
        status = itemView.findViewById(R.id.orderlist_item_status);
        quxdd = itemView.findViewById(R.id.orderlist_item_quxdd);
        zhifu = itemView.findViewById(R.id.orderlist_item_zhifu);
    }
}


view层inter

package com.bwie.shopingcart.View.inter;



public interface CartInterMain {
    void onsuccessmain(String json);
}




view层inter

package com.bwie.shopingcart.View.inter;



public interface OrderInterMain {
    void onSuccessM(String json);
}





view层inter



package com.bwie.shopingcart.View.inter;


public interface OrderListInterMain {
    void onSuccessolM(String json);
    void onSuccessolMAll(String json);
}


view层inter

package com.bwie.shopingcart.View.inter;



public interface UserInterMain {
    void onSuccessMain(String json);
}




drawable下的文件

btn.xml

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <stroke
        android:dashGap="3dp"
        android:dashWidth="5dp"
        android:width="2dp"
        android:color="#00BB00" />
    <corners android:radius="5dp" />
    <padding
        android:bottom="10dp"
        android:left="10dp"
        android:right="10dp"
        android:top="10dp" />
</shape>


drawable下的文件

addline.xml

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <stroke
        android:width="3dp"
        android:color="#E3E3E3"
        android:dashWidth="3dp" />
</shape>



布局文件

activity_main

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:orientation="vertical"
    xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
    android:layout_height="match_parent" tools:context="com.bwie.shopingcart.View.activity.UserActivity">
     <TextView
         android:id="@+id/user_xinxi"
         android:text="获取用户信息"
         android:textSize="25dp"
         android:textColor="#263238"
         android:layout_marginTop="3dp"
         android:layout_centerHorizontal="true"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content" />
    <EditText
        android:layout_below="@+id/user_xinxi"
        android:id="@+id/user_phone"
        android:layout_width="300dp"
        android:hint="请输入手机号"
        android:textStyle="bold"
        android:layout_marginTop="8dp"
        android:layout_centerHorizontal="true"
        android:layout_height="50dp" />
    <EditText
        android:layout_below="@id/user_phone"
        android:id="@+id/user_password"
        android:layout_width="300dp"
        android:hint="请输入密码"
        android:textStyle="bold"
        android:layout_marginTop="8dp"
        android:inputType="textPassword"
        android:layout_centerHorizontal="true"
        android:layout_height="50dp" />

      <TextView
          android:id="@+id/user_gotocart"
          android:layout_below="@+id/user_password"
          android:text="进入购物车"
          android:textSize="28dp"
          android:background="@drawable/btn"
          android:layout_marginTop="20dp"
          android:layout_centerHorizontal="true"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content" />
    <LinearLayout
        android:layout_below="@id/user_gotocart"
        android:layout_width="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="15dp"
        android:background="#FFFF"
        android:orientation="horizontal"
        android:layout_height="30dp">
        <CheckBox
            android:id="@+id/user_checkbox"
            android:layout_width="30dp"
            android:layout_height="match_parent" />
        <TextView
            android:text="记住密码"
            android:gravity="center_vertical"
            android:layout_width="wrap_content"
            android:layout_height="match_parent" />
    </LinearLayout>

</RelativeLayout>



布局文件

activity_cart

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:background="#E3E3E3"
    android:layout_height="match_parent"
    tools:context="com.bwie.shopingcart.View.activity.CartActivity">

            <ExpandableListView
                android:id="@+id/cart_expandableListview"
                android:layout_width="match_parent"
                android:layout_alignParentTop="true"
                android:layout_height="match_parent">
            </ExpandableListView>
    <LinearLayout
        android:id="@+id/cart_childitem_bootm"
        android:layout_alignParentBottom="true"
        android:layout_width="match_parent"
        android:background="#00BB00"
        android:orientation="horizontal"
        android:layout_height="60dp">
        <CheckBox
            android:id="@+id/cart_checkall"
            android:layout_weight="1"
            android:layout_width="30dp"
            android:layout_gravity="center_vertical"
            android:layout_height="30dp" />
        <TextView
            android:layout_weight="2"
            android:text="全选"
            android:layout_width="wrap_content"
            android:textSize="15dp"
            android:textColor="#263238"
            android:layout_gravity="center_vertical"
            android:layout_height="wrap_content" />
        <TextView
            android:id="@+id/cart_sumprice"
            android:layout_weight="5"
            android:textSize="25dp"
            android:textColor="#FF00"
            android:text="合计:¥0.00"
            android:layout_marginLeft="5dp"
            android:layout_width="wrap_content"
            android:layout_gravity="center_vertical"
            android:layout_height="wrap_content" />
        <TextView
            android:id="@+id/cart_jiesuan"
            android:layout_weight="2"
            android:text="去结算{0}"
            android:textSize="28dp"
            android:textColor="#FF00"
            android:layout_gravity="center_vertical"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />
    </LinearLayout>
    <include
        android:visibility="visible"
        android:id="@+id/cart_progressbar"
        layout="@layout/layout_jiazai"
        ></include>
    <include
        android:id="@+id/cart_null"
        android:visibility="gone"
        layout="@layout/layout_cart_null"
        ></include>
</RelativeLayout>


<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:background="#E3E3E3"
    android:layout_height="match_parent"
    tools:context="com.bwie.shopingcart.View.activity.CartActivity">

            <ExpandableListView
                android:id="@+id/cart_expandableListview"
                android:layout_width="match_parent"
                android:layout_alignParentTop="true"
                android:layout_height="match_parent">
            </ExpandableListView>
    <LinearLayout
        android:id="@+id/cart_childitem_bootm"
        android:layout_alignParentBottom="true"
        android:layout_width="match_parent"
        android:background="#00BB00"
        android:orientation="horizontal"
        android:layout_height="60dp">
        <CheckBox
            android:id="@+id/cart_checkall"
            android:layout_weight="1"
            android:layout_width="30dp"
            android:layout_gravity="center_vertical"
            android:layout_height="30dp" />
        <TextView
            android:layout_weight="2"
            android:text="全选"
            android:layout_width="wrap_content"
            android:textSize="15dp"
            android:textColor="#263238"
            android:layout_gravity="center_vertical"
            android:layout_height="wrap_content" />
        <TextView
            android:id="@+id/cart_sumprice"
            android:layout_weight="5"
            android:textSize="25dp"
            android:textColor="#FF00"
            android:text="合计:¥0.00"
            android:layout_marginLeft="5dp"
            android:layout_width="wrap_content"
            android:layout_gravity="center_vertical"
            android:layout_height="wrap_content" />
        <TextView
            android:id="@+id/cart_jiesuan"
            android:layout_weight="2"
            android:text="去结算{0}"
            android:textSize="28dp"
            android:textColor="#FF00"
            android:layout_gravity="center_vertical"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />
    </LinearLayout>
    <include
        android:visibility="visible"
        android:id="@+id/cart_progressbar"
        layout="@layout/layout_jiazai"
        ></include>
    <include
        android:id="@+id/cart_null"
        android:visibility="gone"
        layout="@layout/layout_cart_null"
        ></include>
</RelativeLayout>


activity_animate

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="com.bwie.shopingcart.View.activity.AnimateActivity">
   <ImageView
       android:id="@+id/animate_image"
       android:src="@mipmap/ic_launcher"
       android:layout_width="80dp"
       android:layout_centerHorizontal="true"
       android:layout_height="80dp" />
</RelativeLayout>


activity_order

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="com.bwie.shopingcart.View.activity.OrderActivity">
    <LinearLayout
        android:layout_alignParentTop="true"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

        <ListView
            android:id="@+id/order_listview"
            android:background="#E3E3E3"
            android:layout_width="match_parent"
            android:layout_height="match_parent"></ListView>
    </LinearLayout>

    <LinearLayout
        android:layout_alignParentBottom="true"
        android:layout_width="match_parent"
        android:orientation="horizontal"
        android:layout_height="80dp">
        <TextView
            android:id="@+id/order_price"
            android:text="实付价:¥"
            android:textSize="28dp"
            android:textColor="#FF00"
            android:gravity="center"
            android:background="#E3E3E3"
            android:layout_weight="1"
            android:layout_width="0dp"
            android:layout_height="match_parent" />
        <TextView
            android:id="@+id/order_xiadan"
            android:textColor="#263238"
            android:text="立即下单"
            android:layout_weight="1"
            android:textSize="28dp"
            android:gravity="center"
            android:layout_width="0dp"
            android:background="@drawable/btn"
            android:layout_height="match_parent" />
    </LinearLayout>

</RelativeLayout>



activity_order_list

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:orientation="vertical"
    android:layout_height="match_parent"
    tools:context="com.bwie.shopingcart.View.activity.OrderListActivity">
 <LinearLayout
     android:layout_width="match_parent"
     android:orientation="horizontal"
     android:layout_height="60dp">
   <TextView
       android:id="@+id/tab_hehe_quanbu"
       android:layout_weight="1"
       android:text="全部"
       android:textSize="25dp"
       android:gravity="center"
       android:layout_width="0dp"
       android:layout_height="match_parent" />
   <TextView
       android:id="@+id/tab_hehe_daizhifu"
       android:layout_weight="1"
       android:text="待支付"
       android:textSize="25dp"
       android:gravity="center"
       android:layout_width="0dp"
       android:layout_height="match_parent" />
   <TextView
       android:id="@+id/tab_hehe_yizhifu"
       android:layout_weight="1"
       android:text="已支付"
       android:textSize="25dp"
       android:gravity="center"
       android:layout_width="0dp"
       android:layout_height="match_parent" />
   <TextView
       android:id="@+id/tab_hehe_yiquxiao"
       android:layout_weight="1"
       android:text="已取消"
       android:textSize="25dp"
       android:gravity="center"
       android:layout_width="0dp"
       android:layout_height="match_parent" />
 </LinearLayout>
    <FrameLayout
        android:id="@+id/orderlist_framelayout"
        android:layout_width="match_parent"
        android:layout_height="match_parent"></FrameLayout>
</LinearLayout>


layout_cart_groupitem

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:orientation="horizontal"
    android:background="#E3E3E3"
    android:layout_height="60dp">
   <CheckBox
       android:id="@+id/cart_groupitem_checkbox"
       android:layout_width="40dp"
       android:layout_gravity="center_vertical"
       android:layout_height="match_parent" />
    <TextView
        android:id="@+id/cart_groupitem_title"
        android:text="商家"
        android:textSize="30dp"
        android:textColor="#263238"
        android:gravity="center_vertical"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />
</LinearLayout>



layout_cart_null

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
       <Button
           android:text="购物车为空哦~~~去逛逛吧!"
           android:layout_width="wrap_content"
           android:background="#E3E3E3"
           android:layout_centerInParent="true"
           android:layout_height="wrap_content" />
</RelativeLayout>


layout_cart_childitem

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:background="#FFFF"
    android:layout_height="80dp">
    <CheckBox
        android:id="@+id/cart_childitem_checkbox"
        android:layout_width="50dp"
        android:layout_centerVertical="true"
        android:layout_height="match_parent" />
    <ImageView
        android:id="@+id/cart_childitem_imageview"
        android:layout_width="100dp"
        android:layout_toRightOf="@+id/cart_childitem_checkbox"
        android:layout_height="100dp" />
    <TextView
        android:id="@+id/cart_childitem_title"
        android:text="title"
        android:maxLines="1"
        android:minLines="1"
        android:textSize="22dp"
        android:layout_marginLeft="5dp"
        android:layout_width="match_parent"
        android:layout_alignParentTop="true"
        android:layout_toRightOf="@+id/cart_childitem_imageview"
        android:layout_height="40dp" />
     <TextView
         android:id="@+id/cart_childitem_price"
         android:text="现价:¥000.00"
         android:textColor="#FF00"
         android:layout_below="@+id/cart_childitem_title"
         android:layout_toRightOf="@+id/cart_childitem_imageview"
         android:layout_width="wrap_content"
         android:layout_marginTop="10dp"
         android:textSize="22dp"
         android:layout_height="match_parent" />
        <LinearLayout
            android:id="@+id/cart_childitem_linear"
            android:layout_marginTop="13dp"
            android:layout_marginLeft="15dp"
            android:layout_below="@id/cart_childitem_title"
            android:layout_toRightOf="@id/cart_childitem_price"
            android:layout_width="wrap_content"
            android:orientation="horizontal"
            android:layout_height="50dp">
          <TextView
              android:id="@+id/cart_childitem_jian"
              android:text="-"
              android:textSize="25dp"
              android:background="@drawable/addline"
              android:layout_width="wrap_content"
              android:layout_height="match_parent" />
            <TextView
                android:id="@+id/cart_childitem_number"
                android:text="1"
                android:textSize="25dp"
                android:layout_width="wrap_content"
                android:layout_height="match_parent" />
            <TextView
                android:id="@+id/cart_childitem_jia"
                android:text="+"
                android:textSize="25dp"
                android:background="@drawable/addline"
                android:layout_width="wrap_content"
                android:layout_height="match_parent" />
        </LinearLayout>
         <Button
             android:id="@+id/cart_childitem_btndel"
             android:text="删除"
             android:layout_alignParentRight="true"
             android:background="#FF00"
             android:layout_marginRight="5dp"
             android:layout_width="30dp"
             android:layout_height="100dp" />
</RelativeLayout>




layout_fragmentorderlist

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:background="#E3E3E3"
    android:orientation="vertical"
    android:layout_height="match_parent">
    <com.jcodecraeer.xrecyclerview.XRecyclerView
        android:id="@+id/orderlist_fragment_xrecyclerview"
        android:layout_width="match_parent"
        android:layout_height="match_parent"></com.jcodecraeer.xrecyclerview.XRecyclerView>
    <include
        android:id="@+id/orderlist_jiazai"
        android:visibility="gone"
        layout="@layout/layout_jiazai"
        ></include>
</RelativeLayout>



layout_jiazai

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
     <ProgressBar
         android:layout_width="80dp"
         android:layout_height="80dp"
         android:layout_centerVertical="true"
         android:layout_centerHorizontal="true" />
</RelativeLayout>



layout_order_listviewitem

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:orientation="horizontal"
    android:background="#FFF"
    android:layout_marginTop="5dp"
    android:layout_height="match_parent">
  <ImageView
      android:id="@+id/order_item_imageview"
      android:layout_width="100dp"
      android:layout_height="100dp" />
    <LinearLayout
        android:layout_width="match_parent"
        android:orientation="vertical"
        android:layout_height="100dp">
        <TextView
            android:id="@+id/order_item_title"
            android:layout_weight="1"
            android:textSize="28dp"
            android:gravity="center_vertical"
            android:maxLines="1"
            android:minLines="1"
            android:layout_width="match_parent"
            android:layout_height="0dp" />
        <TextView
            android:id="@+id/order_item_price"
            android:layout_weight="1"
            android:textSize="20dp"
            android:textColor="#FF00"
            android:gravity="center_vertical"
            android:layout_width="match_parent"
            android:layout_height="0dp" />
    </LinearLayout>
</LinearLayout>



layout_orderlist_fragment_xrecycleritem

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:orientation="horizontal"
    android:layout_marginTop="5dp"
    android:background="#FFF"
    android:layout_height="150dp">
<LinearLayout
    android:layout_weight="2"
    android:layout_width="0dp"
    android:orientation="vertical"
    android:layout_height="match_parent">
    <TextView
        android:id="@+id/orderlist_item_title"
        android:textSize="25dp"
        android:layout_weight="1"
        android:gravity="center_vertical"
        android:layout_width="match_parent"
        android:layout_height="0dp" />
    <TextView
        android:id="@+id/orderlist_item_price"
        android:layout_weight="1"
        android:textSize="25dp"
        android:gravity="center_vertical"
        android:layout_width="match_parent"
        android:layout_height="0dp" />
    <TextView
        android:id="@+id/orderlist_item_time"
        android:layout_weight="1"
        android:textSize="25dp"
        android:gravity="center_vertical"
        android:layout_width="match_parent"
        android:layout_height="0dp" />
</LinearLayout>
    <LinearLayout
        android:layout_weight="1"
        android:layout_width="0dp"
        android:orientation="vertical"
        android:layout_height="match_parent">
        <TextView
            android:id="@+id/orderlist_item_status"
            android:layout_weight="1"
            android:textSize="25dp"
            android:gravity="center"
            android:textColor="#FF00"
            android:layout_width="match_parent"
            android:layout_height="0dp" />
        <TextView
            android:id="@+id/orderlist_item_zhifu"
            android:layout_weight="1"
            android:textSize="25dp"
            android:textColor="#00B200"
            android:gravity="center"
            android:layout_width="match_parent"
            android:layout_height="0dp" />
        <TextView
            android:textSize="25dp"
            android:id="@+id/orderlist_item_quxdd"
            android:layout_weight="1"
            android:gravity="center"
            android:layout_width="match_parent"
            android:layout_height="0dp" />
    </LinearLayout>
</LinearLayout>




猜你喜欢

转载自blog.csdn.net/xxb52306/article/details/78861628