//首先是展示Fragment的布局
xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:orientation="vertical" android:layout_height="match_parent"> <TextView android:text="购物车" android:gravity="center" android:textSize="20sp" android:textColor="#ffffff" android:background="@drawable/tv_gouwuche_jianbian" android:layout_width="match_parent" android:layout_height="50dp" /> <ExpandableListView android:id="@+id/expand" android:layout_weight="1" android:layout_width="match_parent" android:layout_height="match_parent">ExpandableListView> <LinearLayout android:orientation="horizontal" android:gravity="center" android:layout_width="match_parent" android:layout_height="60dp"> <CheckBox android:id="@+id/cb_all" android:text="全选" android:layout_weight="1" android:layout_width="match_parent" android:layout_height="wrap_content" /> <TextView android:id="@+id/shop_allmoney" android:text="总计 :¥0" android:layout_width="90dp" android:layout_height="wrap_content" /> <Button android:id="@+id/shop_count" android:text="结算(0)" android:textColor="#ffffff" android:background="@drawable/bt_jianbian" android:layout_width="wrap_content" android:layout_height="wrap_content" /> LinearLayout> LinearLayout>
//下面是Fragment中所实现的一些个代码 我是在这个类里面进行的适配其中有一些删除商品的信息
package demo01.com.bawei.demo03.fragment; import android.content.Intent; import android.os.Bundle; import android.support.annotation.Nullable; import android.support.v4.app.Fragment; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.BaseExpandableListAdapter; import android.widget.Button; import android.widget.CheckBox; import android.widget.ExpandableListView; import android.widget.ImageView; import android.widget.TextView; import android.widget.Toast; import com.squareup.picasso.Picasso; import java.io.IOException; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import demo01.com.bawei.demo03.API; import demo01.com.bawei.demo03.MyUtils; import demo01.com.bawei.demo03.PayActivity; import demo01.com.bawei.demo03.R; import demo01.com.bawei.demo03.bean.ShopBean; import demo01.com.bawei.demo03.bean.ShopDeleBean; import demo01.com.bawei.demo03.utils.GsonObjectCallback; import demo01.com.bawei.demo03.utils.OkHttp3Utils; import okhttp3.Call;
public class Fragment03 extends Fragment implements View.OnClickListener{ private ExpandableListView expand; private Button shop_count; private CheckBox cb_all; private TextView shop_allmoney; private List> list; private List
cart_list; private List goodsBeanList; private MyExpandAdapter myExpandAdapter; @Nullable @Override public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { View view = inflater.inflate(R.layout.fragment03, container, false); expand = (ExpandableListView) view.findViewById(R.id.expand); shop_count = (Button) view.findViewById(R.id.shop_count); cb_all = (CheckBox) view.findViewById(R.id.cb_all); shop_allmoney = (TextView) view.findViewById(R.id.shop_allmoney); //去掉小三角 expand.setGroupIndicator(null); Shopping(); cb_all.setOnClickListener(this); shop_count.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(getActivity(), PayActivity.class); startActivity(intent); } }); return view; } private void Shopping(){ Map map = new HashMap<>(); map.put("key", MyUtils.getSharedPreferencesInstance(getContext()).getString("userKey","")); OkHttp3Utils.doPost(API.CART_PATH, map, new GsonObjectCallback () { @Override public void onUi(ShopBean shopBean) { list = new ArrayList >(); cart_list = shopBean.getDatas().getCart_list(); for (int i = 0; i< cart_list.size(); i++){ goodsBeanList = cart_list.get(i).getGoods(); list.add(goodsBeanList); } //关联适配器 //关联适配器 myExpandAdapter = new MyExpandAdapter(); expand.setAdapter(myExpandAdapter); for(int i = 0;i<expand.getCount();i++){ expand.expandGroup(i); } } @Override public void onFailed(Call call, IOException e) { } }); } @Override public void onClick(View v) { if(((CheckBox) v).isChecked()){ List
cart_list = this.cart_list; for (int i = 0; i < cart_list.size(); i++) { ShopBean.DatasBean.CartListBean cartListBean = cart_list.get(i); cartListBean.setAllCheck(true); List goods = cart_list.get(i).getGoods(); for (int j = 0; j < goods.size(); j++) { List beanList = cartListBean.getGoods(); for (ShopBean.DatasBean.CartListBean.GoodsBean childData : beanList) { childData.setItemCheck(true); } } } //刷新界面 notifyCheckAdapter(); } else { List cart_list = this.cart_list; for (int i = 0; i < cart_list.size(); i++) { ShopBean.DatasBean.CartListBean cartListBean = cart_list.get(i); cartListBean.setAllCheck(false); List goods = cart_list.get(i).getGoods(); for (int j = 0; j < goods.size(); j++) { List beanList = cartListBean.getGoods(); for (ShopBean.DatasBean.CartListBean.GoodsBean childData : beanList) { childData.setItemCheck(false); } } } //刷新界面 notifyCheckAdapter(); } } class MyExpandAdapter extends BaseExpandableListAdapter { //删除子条目 public void deleteData(int groupPosition,int childPosition){ cart_list.get(groupPosition).getGoods().remove(childPosition); notifyDataSetChanged(); } //删除组条目 public void deleteGroup(int groupPosition){ cart_list.remove(groupPosition); notifyDataSetChanged(); } @Override public int getGroupCount() { return cart_list.size(); } @Override public int getChildrenCount(int groupPosition) { if(groupPosition < cart_list.size()){ return list.get(groupPosition).size(); }else{ return 0; } } @Override public Object getGroup(int groupPosition) { return groupPosition; } @Override public Object getChild(int groupPosition, int childPosition) { return list.get(groupPosition).get(childPosition); } @Override public long getGroupId(int groupPosition) { return groupPosition; } @Override public long getChildId(int groupPosition, int childPosition) { return childPosition; } //组条目是否有稳定的ID 数据不会改变 @Override public boolean hasStableIds() { return true; } @Override public View getGroupView(int groupPosition, boolean isExpanded, View convertView, ViewGroup parent) { GroupViewHolder groupViewHolder = null; if(convertView == null){ groupViewHolder = new GroupViewHolder(); convertView = View.inflate(getActivity(), R.layout.shop_group,null); groupViewHolder.group_cb = (CheckBox) convertView.findViewById(R.id.group_cb); groupViewHolder.group_store_name = (TextView) convertView.findViewById(R.id.group_store_name); convertView.setTag(groupViewHolder); }else{ groupViewHolder = (GroupViewHolder) convertView.getTag(); } ShopBean.DatasBean.CartListBean cartListBean = cart_list.get(groupPosition); groupViewHolder.group_store_name.setText(cartListBean.getStore_name()); //一级 if(cart_list.get(groupPosition).isAllCheck()){ //被选中则设置为选中状态 groupViewHolder.group_cb.setChecked(true); }else{ //否则设置为未选中 groupViewHolder.group_cb.setChecked(false); } //一级监听 将下标和组件传入 groupViewHolder.group_cb.setOnClickListener(new onGroupClickListener(groupPosition,groupViewHolder.group_cb)); return convertView; } @Override public View getChildView(final int groupPosition, final int childPosition, boolean isLastChild, View convertView, ViewGroup parent) { ChildViewHolder childViewHolder = null; if(convertView == null){ childViewHolder = new ChildViewHolder(); convertView = View.inflate(getActivity(),R.layout.shop_child,null); childViewHolder.child_cb = (CheckBox) convertView.findViewById(R.id.child_cb); childViewHolder.child_goods_name = (TextView) convertView.findViewById(R.id.child_goods_name); childViewHolder.child_goods_price = (TextView) convertView.findViewById(R.id.child_goods_price); childViewHolder.child_store_name = (TextView) convertView.findViewById(R.id.child_store_name); childViewHolder.child_goods_num = (TextView) convertView.findViewById(R.id.child_goods_num); childViewHolder.child_image_url = (ImageView) convertView.findViewById(R.id.child_image_url); childViewHolder.child_delete = (Button) convertView.findViewById(R.id.child_delete); convertView.setTag(childViewHolder); }else{ childViewHolder = (ChildViewHolder) convertView.getTag(); } final ShopBean.DatasBean.CartListBean.GoodsBean goodsBean = list.get(groupPosition).get(childPosition); childViewHolder.child_goods_name.setText(goodsBean.getGoods_name()); childViewHolder.child_store_name.setText(goodsBean.getStore_name()); childViewHolder.child_goods_num.setText(goodsBean.getGoods_num()); childViewHolder.child_goods_price.setText(goodsBean.getGoods_price()); Picasso.with(getContext()).load(goodsBean.getGoods_image_url()).into(childViewHolder.child_image_url); childViewHolder.child_cb.setChecked(list.get(groupPosition).get(childPosition).isItemCheck()); childViewHolder.child_cb.setOnClickListener(new onChildCheckListener(groupPosition,childPosition,childViewHolder.child_cb)); childViewHolder.child_delete.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Map map = new HashMap (); map.put("key",MyUtils.getSharedPreferencesInstance(getContext()).getString("userKey","")); map.put("cart_id",goodsBean.getCart_id()); OkHttp3Utils.doPost(API.CART_DELE, map, new GsonObjectCallback () { @Override public void onUi(ShopDeleBean shopDeleBean) { if(shopDeleBean.getCode() == 200){ Toast.makeText(getActivity(), "删除成功", Toast.LENGTH_SHORT).show(); deleteData(groupPosition,childPosition); if(goodsBeanList.size() == 0){ deleteGroup(groupPosition); } } } @Override public void onFailed(Call call, IOException e) { } }); } }); return convertView; } @Override public boolean isChildSelectable(int groupPosition, int childPosition) { return true; } class GroupViewHolder{ CheckBox group_cb; TextView group_store_name; } class ChildViewHolder{ Button child_delete; CheckBox child_cb; ImageView child_image_url; TextView child_goods_name,child_store_name,child_goods_price,child_goods_num; } } /** * 设置一级监听的类 */ public class onGroupClickListener implements View.OnClickListener{ int groupPosition; CheckBox group_cb; public onGroupClickListener(int groupPosition, CheckBox group_cb) { this.groupPosition = groupPosition; this.group_cb = group_cb; } @Override public void onClick(View v) { if(((CheckBox)v).isChecked()){ //一级全选 setCheck(true); }else{ setCheck(false); cb_all.setChecked(false); } notifyCheckAdapter(); } //设置选中 public void setCheck(boolean checkFlag){ //获取集合中每一条数据 ShopBean.DatasBean.CartListBean cartListBean = cart_list.get(groupPosition); //一级状态 cartListBean.setAllCheck(checkFlag); //全选状态判断 int num = 0; for (int i = 0;i<cart_list.size();i++){ boolean allCheck = cart_list.get(i).isAllCheck(); if(!allCheck){ num ++; } } if(num == 0){ cb_all.setChecked(true); }else{ cb_all.setChecked(false); } //二级状态 List goods = cart_list.get(groupPosition).getGoods(); for(ShopBean.DatasBean.CartListBean.GoodsBean goodsbean:goods){ goodsbean.setItemCheck(checkFlag); } } } /** * 二级监听 */ public class onChildCheckListener implements View.OnClickListener{ int groupPosition; int childPosition; CheckBox cb_child; public onChildCheckListener(int groupPosition, int childPosition, CheckBox cb_child) { this.cb_child = cb_child; this.groupPosition = groupPosition; this.childPosition = childPosition; } @Override public void onClick(View v) { if(((CheckBox)v).isChecked()){ //子选中 list.get(groupPosition).get(childPosition).setItemCheck(true); }else{ //子未选中 list.get(groupPosition).get(childPosition).setItemCheck(false); } //二级联动一级状态 setParentCheckFlag(); //检测状态 二级全联选中 int num = 0; for(int i = 0;i<cart_list.size();i++){ boolean allCheck = cart_list.get(i).isAllCheck(); if (!allCheck) { num++; } } if (num == 0) { cb_all.setChecked(true); } else { cb_all.setChecked(false); } } //二级联动一级状态 private void setParentCheckFlag(){ ShopBean.DatasBean.CartListBean cartListBean = cart_list.get(groupPosition); List goods = cartListBean.getGoods(); for (int i = 0; i < goods.size(); i++) { if (!goods.get(i).isItemCheck()) { //子未选中 父取消选中 cartListBean.setAllCheck(false); notifyCheckAdapter(); return; } if (i == goods.size() - 1) { //子选中 父选中 cartListBean.setAllCheck(true); notifyCheckAdapter(); return; } } // 没出现全选或者取消全选的时候执行的 sum(); } } //统计数量和价格 private void sum() { int num = 0; double price = 0; List cart_list = this.cart_list; for (ShopBean.DatasBean.CartListBean parentData : cart_list) { for (ShopBean.DatasBean.CartListBean.GoodsBean child : parentData.getGoods()) { if (child.isItemCheck()) { num++; double i = Double.parseDouble(child.getGoods_price()); price += i; } } } shop_count.setText("结算(" + num + ")"); shop_allmoney.setText("¥" + price); } //刷新适配器界面 private void notifyCheckAdapter() { sum(); expand.setAdapter(myExpandAdapter); int count = expand.getCount(); for (int i = 0; i < count; i++) { expand.expandGroup(i); } } }
//下面是我所需要的bean类
import java.util.List;
public class ShopBean { /** * code : 200 * datas : {"cart_list":[{"store_id":"1","store_name":"好商城V5","goods":[{"cart_id":"3","buyer_id":"8","store_id":"1","store_name":"好商城V5","goods_id":"100009","goods_name":"劳力士Rolex 日志型系列 116200 63200 自动机械钢带男表联保正品","goods_price":"52800.00","goods_num":"1","goods_image":"1_04752627958339099.jpg","bl_id":"0","state":true,"storage_state":true,"goods_commonid":"100009","gc_id":"587","transport_id":"0","goods_freight":"0.00","goods_vat":"0","goods_storage":"99","goods_storage_alarm":"0","is_fcode":"0","have_gift":"0","groupbuy_info":[],"xianshi_info":[],"is_book":"0","book_down_payment":"0.00","book_final_payment":"0.00","book_down_time":"0","is_chain":"0","sole_info":[],"contractlist":[],"goods_image_url":"http://127.0.0.1/data/upload/shop/store/goods/1/1_04752627958339099_240.jpg","goods_total":"52800.00"}]}],"sum":"52800.00","cart_count":1} */ private int code; private DatasBean datas; public int getCode() { return code; } public void setCode(int code) { this.code = code; } public DatasBean getDatas() { return datas; } public void setDatas(DatasBean datas) { this.datas = datas; } public static class DatasBean { /** * cart_list : [{"store_id":"1","store_name":"好商城V5","goods":[{"cart_id":"3","buyer_id":"8","store_id":"1","store_name":"好商城V5","goods_id":"100009","goods_name":"劳力士Rolex 日志型系列 116200 63200 自动机械钢带男表联保正品","goods_price":"52800.00","goods_num":"1","goods_image":"1_04752627958339099.jpg","bl_id":"0","state":true,"storage_state":true,"goods_commonid":"100009","gc_id":"587","transport_id":"0","goods_freight":"0.00","goods_vat":"0","goods_storage":"99","goods_storage_alarm":"0","is_fcode":"0","have_gift":"0","groupbuy_info":[],"xianshi_info":[],"is_book":"0","book_down_payment":"0.00","book_final_payment":"0.00","book_down_time":"0","is_chain":"0","sole_info":[],"contractlist":[],"goods_image_url":"http://127.0.0.1/data/upload/shop/store/goods/1/1_04752627958339099_240.jpg","goods_total":"52800.00"}]}] * sum : 52800.00 * cart_count : 1 */ private String sum; private int cart_count; private List//其中用到了MyUtilscart_list; public String getSum() { return sum; } public void setSum(String sum) { this.sum = sum; } public int getCart_count() { return cart_count; } public void setCart_count(int cart_count) { this.cart_count = cart_count; } public List getCart_list() { return cart_list; } public void setCart_list(List cart_list) { this.cart_list = cart_list; } public static class CartListBean { /** * store_id : 1 * store_name : 好商城V5 * goods : [{"cart_id":"3","buyer_id":"8","store_id":"1","store_name":"好商城V5","goods_id":"100009","goods_name":"劳力士Rolex 日志型系列 116200 63200 自动机械钢带男表联保正品","goods_price":"52800.00","goods_num":"1","goods_image":"1_04752627958339099.jpg","bl_id":"0","state":true,"storage_state":true,"goods_commonid":"100009","gc_id":"587","transport_id":"0","goods_freight":"0.00","goods_vat":"0","goods_storage":"99","goods_storage_alarm":"0","is_fcode":"0","have_gift":"0","groupbuy_info":[],"xianshi_info":[],"is_book":"0","book_down_payment":"0.00","book_final_payment":"0.00","book_down_time":"0","is_chain":"0","sole_info":[],"contractlist":[],"goods_image_url":"http://127.0.0.1/data/upload/shop/store/goods/1/1_04752627958339099_240.jpg","goods_total":"52800.00"}] */ private String store_id; private String store_name; private List goods; public boolean allCheck = false; public boolean isAllCheck() { return allCheck; } public void setAllCheck(boolean allCheck) { this.allCheck = allCheck; } public String getStore_id() { return store_id; } public void setStore_id(String store_id) { this.store_id = store_id; } public String getStore_name() { return store_name; } public void setStore_name(String store_name) { this.store_name = store_name; } public List getGoods() { return goods; } public void setGoods(List goods) { this.goods = goods; } public static class GoodsBean { /** * cart_id : 3 * buyer_id : 8 * store_id : 1 * store_name : 好商城V5 * goods_id : 100009 * goods_name : 劳力士Rolex 日志型系列 116200 63200 自动机械钢带男表联保正品 * goods_price : 52800.00 * goods_num : 1 * goods_image : 1_04752627958339099.jpg * bl_id : 0 * state : true * storage_state : true * goods_commonid : 100009 * gc_id : 587 * transport_id : 0 * goods_freight : 0.00 * goods_vat : 0 * goods_storage : 99 * goods_storage_alarm : 0 * is_fcode : 0 * have_gift : 0 * groupbuy_info : [] * xianshi_info : [] * is_book : 0 * book_down_payment : 0.00 * book_final_payment : 0.00 * book_down_time : 0 * is_chain : 0 * sole_info : [] * contractlist : [] * goods_image_url : http://127.0.0.1/data/upload/shop/store/goods/1/1_04752627958339099_240.jpg * goods_total : 52800.00 */ private String cart_id; private String buyer_id; private String store_id; private String store_name; private String goods_id; private String goods_name; private String goods_price; private String goods_num; private String goods_image; private String bl_id; private boolean state; private boolean storage_state; private String goods_commonid; private String gc_id; private String transport_id; private String goods_freight; private String goods_vat; private String goods_storage; private String goods_storage_alarm; private String is_fcode; private String have_gift; private String is_book; private String book_down_payment; private String book_final_payment; private String book_down_time; private String is_chain; private String goods_image_url; private String goods_total; private List> groupbuy_info; private List> xianshi_info; private List> sole_info; private List> contractlist; public boolean itemCheck = false; public boolean isItemCheck() { return itemCheck; } public void setItemCheck(boolean itemCheck) { this.itemCheck = itemCheck; } public String getCart_id() { return cart_id; } public void setCart_id(String cart_id) { this.cart_id = cart_id; } public String getBuyer_id() { return buyer_id; } public void setBuyer_id(String buyer_id) { this.buyer_id = buyer_id; } public String getStore_id() { return store_id; } public void setStore_id(String store_id) { this.store_id = store_id; } public String getStore_name() { return store_name; } public void setStore_name(String store_name) { this.store_name = store_name; } public String getGoods_id() { return goods_id; } public void setGoods_id(String goods_id) { this.goods_id = goods_id; } public String getGoods_name() { return goods_name; } public void setGoods_name(String goods_name) { this.goods_name = goods_name; } public String getGoods_price() { return goods_price; } public void setGoods_price(String goods_price) { this.goods_price = goods_price; } public String getGoods_num() { return goods_num; } public void setGoods_num(String goods_num) { this.goods_num = goods_num; } public String getGoods_image() { return goods_image; } public void setGoods_image(String goods_image) { this.goods_image = goods_image; } public String getBl_id() { return bl_id; } public void setBl_id(String bl_id) { this.bl_id = bl_id; } public boolean isState() { return state; } public void setState(boolean state) { this.state = state; } public boolean isStorage_state() { return storage_state; } public void setStorage_state(boolean storage_state) { this.storage_state = storage_state; } public String getGoods_commonid() { return goods_commonid; } public void setGoods_commonid(String goods_commonid) { this.goods_commonid = goods_commonid; } public String getGc_id() { return gc_id; } public void setGc_id(String gc_id) { this.gc_id = gc_id; } public String getTransport_id() { return transport_id; } public void setTransport_id(String transport_id) { this.transport_id = transport_id; } public String getGoods_freight() { return goods_freight; } public void setGoods_freight(String goods_freight) { this.goods_freight = goods_freight; } public String getGoods_vat() { return goods_vat; } public void setGoods_vat(String goods_vat) { this.goods_vat = goods_vat; } public String getGoods_storage() { return goods_storage; } public void setGoods_storage(String goods_storage) { this.goods_storage = goods_storage; } public String getGoods_storage_alarm() { return goods_storage_alarm; } public void setGoods_storage_alarm(String goods_storage_alarm) { this.goods_storage_alarm = goods_storage_alarm; } public String getIs_fcode() { return is_fcode; } public void setIs_fcode(String is_fcode) { this.is_fcode = is_fcode; } public String getHave_gift() { return have_gift; } public void setHave_gift(String have_gift) { this.have_gift = have_gift; } public String getIs_book() { return is_book; } public void setIs_book(String is_book) { this.is_book = is_book; } public String getBook_down_payment() { return book_down_payment; } public void setBook_down_payment(String book_down_payment) { this.book_down_payment = book_down_payment; } public String getBook_final_payment() { return book_final_payment; } public void setBook_final_payment(String book_final_payment) { this.book_final_payment = book_final_payment; } public String getBook_down_time() { return book_down_time; } public void setBook_down_time(String book_down_time) { this.book_down_time = book_down_time; } public String getIs_chain() { return is_chain; } public void setIs_chain(String is_chain) { this.is_chain = is_chain; } public String getGoods_image_url() { return goods_image_url; } public void setGoods_image_url(String goods_image_url) { this.goods_image_url = goods_image_url; } public String getGoods_total() { return goods_total; } public void setGoods_total(String goods_total) { this.goods_total = goods_total; } public List> getGroupbuy_info() { return groupbuy_info; } public void setGroupbuy_info(List> groupbuy_info) { this.groupbuy_info = groupbuy_info; } public List> getXianshi_info() { return xianshi_info; } public void setXianshi_info(List> xianshi_info) { this.xianshi_info = xianshi_info; } public List> getSole_info() { return sole_info; } public void setSole_info(List> sole_info) { this.sole_info = sole_info; } public List> getContractlist() { return contractlist; } public void setContractlist(List> contractlist) { this.contractlist = contractlist; } } } } }
package demo01.com.bawei.demo03; import android.content.Context; import android.content.SharedPreferences;
public class MyUtils { private static SharedPreferences sharedPreferences = null; //将UniCode转化 public static String Unicode2GBK(String dataStr) { int index = 0; StringBuffer buffer = new StringBuffer(); int li_len = dataStr.length(); while (index < li_len) { if (index >= li_len - 1 || !"\\u".equals(dataStr.substring(index, index + 2))) { buffer.append(dataStr.charAt(index)); index++; continue; } String charStr = ""; charStr = dataStr.substring(index + 2, index + 6); char letter = (char) Integer.parseInt(charStr, 16); buffer.append(letter); index += 6; } return buffer.toString(); } //SharedPreferences单例模式 public static SharedPreferences getSharedPreferencesInstance(Context context){ if (sharedPreferences == null){ sharedPreferences = context.getSharedPreferences("config",Context.MODE_PRIVATE); } return sharedPreferences; } }
//用到的数据接口
public static final String CART_PATH = "http://"+url+"/mobile/index.php?act=member_cart&op=cart_list";//下面是适配器当中组条目的布局
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_height="match_parent"> <CheckBox android:id="@+id/group_cb" android:layout_width="wrap_content" android:layout_height="wrap_content" /> <TextView android:id="@+id/group_store_name" android:layout_width="match_parent" android:textSize="15sp" android:layout_height="wrap_content" /> <Button android:id="@+id/myCar_store_edtor" android:layout_width="match_parent" android:layout_height="wrap_content"/> LinearLayout>//子条目的布局
xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:orientation="vertical" android:layout_height="match_parent"> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal"> <CheckBox android:id="@+id/child_cb" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_vertical" android:layout_marginLeft="10dp" android:layout_marginRight="4dp" android:checkMark="?android:attr/listChoiceIndicatorMultiple" android:gravity="center" android:minHeight="64dp" android:minWidth="32dp" android:textAppearance="?android:attr/textAppearanceLarge" android:visibility="visible" /> <ImageView android:id="@+id/child_image_url" android:layout_width="85dp" android:layout_height="85dp" android:layout_marginBottom="15dp" android:layout_marginTop="13dp" android:scaleType="centerCrop" /> <RelativeLayout android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_marginLeft="13dp"> <TextView android:text="123" android:textSize="12sp" android:id="@+id/child_goods_name" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginRight="10dp" android:layout_marginTop="20dp" android:ellipsize="end" android:maxLines="2" android:textColor="#000" /> <TextView android:id="@+id/child_store_name" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerVertical="true" android:layout_marginTop="20dp" android:textColor="#999999" /> <RelativeLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" android:layout_marginBottom="20dp" android:orientation="horizontal"> <TextView android:id="@+id/child_goods_price" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerVertical="true" android:singleLine="true" android:text="¥ 308.00" android:textColor="#FF6600" android:textStyle="bold" /> <TextView android:id="@+id/child_goods_num" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerVertical="true" android:layout_marginLeft="100dp" android:text="X 1" android:textColor="#999999" /> <Button android:id="@+id/child_delete" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentRight="true" android:textColor="#ffffff" android:background="#ff9001" android:text="删除"/> RelativeLayout> RelativeLayout> LinearLayout> LinearLayout>
xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android"> <gradient android:angle="0" android:centerColor="#FF7001" android:centerX="0.5" android:startColor="#FF9001" android:endColor="#FF5100"/> <stroke android:width="1dip" android:color="#FF7001"/> shape>
//删除包
public class ShopDeleBean { /** * code : 200 * datas : 1 */ private int code; private String datas; public int getCode() { return code; } public void setCode(int code) { this.code = code; } public String getDatas() { return datas; } public void setDatas(String datas) { this.datas = datas; } }
//接口
public static final String url="169.254.110.146";
public static final String CART_PATH = "http://"+url+"/mobile/index.php?act=member_cart&op=cart_list"; public static final String CART_DELE = "http://"+url+"/mobile/index.php?act=member_cart&op=cart_del" ;