购物车Damo

//主MainActivity

 @BindView(R.id.third_recyclerview)
    RecyclerView thirdRecyclerview;
    @BindView(R.id.third_allselect)
    TextView thirdAllselect;
    @BindView(R.id.third_totalprice)
    TextView thirdTotalprice;
    @BindView(R.id.third_totalnum)
    TextView thirdTotalnum;
    @BindView(R.id.third_submit)
    TextView thirdSubmit;
    @BindView(R.id.third_pay_linear)
    LinearLayout thirdPayLinear;
    private ThirdFragmentAdapter adapter;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        ButterKnife.bind(this);

        // 1 选中 2 未选中
        thirdAllselect.setTag(1);

        showData();

    }


    //存放购物车中所有的商品
    private List<ShopBean.OrderDataBean.CartlistBean> mAllOrderList = new ArrayList<>();

    private void showData() {

        LinearLayoutManager linearLayoutManager = new LinearLayoutManager(this, LinearLayoutManager.VERTICAL, false);
        adapter = new ThirdFragmentAdapter(this);
        thirdRecyclerview.setAdapter(adapter);
        thirdRecyclerview.setLayoutManager(linearLayoutManager);


        try {
            InputStream inputStream = getAssets().open("shop.json");
            String data = StringUtils.convertStreamToString(inputStream);
            Gson gson = new Gson();
            ShopBean shopBean = gson.fromJson(data, ShopBean.class);


            for (int i = 0; i < shopBean.getOrderData().size(); i++) {
                int length = shopBean.getOrderData().get(i).getCartlist().size();
                for (int j = 0; j < length; j++) {
                    mAllOrderList.add(shopBean.getOrderData().get(i).getCartlist().get(j));
                }
            }
            setFirstState(mAllOrderList);

            adapter.setData(mAllOrderList);
        } catch (Exception e) {
            e.printStackTrace();
        }


        //删除数据回调
        adapter.setOnDeleteClickListener(new ThirdFragmentAdapter.OnDeleteClickListener() {
            @Override
            public void onDeleteClick(View view, int position, int cartid) {


            }
        });


        //
        adapter.setOnRefershListener(new ThirdFragmentAdapter.OnRefershListener() {
            @Override
            public void onRefersh(boolean isSelect, List<ShopBean.OrderDataBean.CartlistBean> list) {

                //标记底部 全选按钮
                if (isSelect) {
                    Drawable left = getResources().getDrawable(R.drawable.shopcart_selected);
                    thirdAllselect.setCompoundDrawablesWithIntrinsicBounds(left, null, null, null);
                } else {
                    Drawable left = getResources().getDrawable(R.drawable.shopcart_unselected);
                    thirdAllselect.setCompoundDrawablesWithIntrinsicBounds(left, null, null, null);
                }

                //总价
                float mTotlaPrice = 0f;
                int mTotalNum = 0;
                for (int i = 0; i < list.size(); i++) {
                    if (list.get(i).isSelect()) {
                        mTotlaPrice += list.get(i).getPrice() * list.get(i).getCount();
                        mTotalNum += list.get(i).getCount();
                    }
                }
                System.out.println("mTotlaPrice = " + mTotlaPrice);

                thirdTotalprice.setText("总价 : " + mTotlaPrice);

                thirdTotalnum.setText("" + mTotalNum + "件商品");
            }
        });


    }

    /**
     * 标记第一条数据 isfirst 1 显示商户名称 2 隐藏
     *
     * @param list
     */
    public static void setFirstState(List<ShopBean.OrderDataBean.CartlistBean> list) {

        if (list.size() > 0) {
            list.get(0).setIsFirst(1);
            for (int i = 1; i < list.size(); i++) {
                if (list.get(i).getShopId() == list.get(i - 1).getShopId()) {
                    list.get(i).setIsFirst(2);
                } else {
                    list.get(i).setIsFirst(1);
                }
            }
        }

    }

    @OnClick({R.id.third_allselect, R.id.third_totalprice, R.id.third_totalnum, R.id.third_submit})
    public void onClick(View view) {
        switch (view.getId()) {
            case R.id.third_allselect:

                // 全选
                int state = (Integer)  thirdAllselect.getTag() ;

                adapter.setUnSelected(state);
                if(state == 1){
                    thirdAllselect.setTag(2);
                }else {
                    thirdAllselect.setTag(1);
                }





                break;
            case R.id.third_totalprice:
                break;
            case R.id.third_totalnum:
                break;
            case R.id.third_submit:
                break;
        }
    }
}

//适配器

public class ThirdFragmentAdapter extends RecyclerView.Adapter<ThirdFragmentAdapter.IViewHolder> {

        private Activity context;

        private List<ShopBean.OrderDataBean.CartlistBean> list ;

    public ThirdFragmentAdapter(MainActivity context) {
            this.context = context;
        }

    public void setData(List<ShopBean.OrderDataBean.CartlistBean> list){

        if(this.list == null){
            this.list = new ArrayList<>();
        }

        this.list.addAll(list);
        notifyDataSetChanged();

    }

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

    @Override
    public void onBindViewHolder(IViewHolder holder, final int position) {


        if (position > 0) {
            //
            if (list.get(position).getShopId() == list.get(position - 1).getShopId()) {
                holder.llShopcartHeader.setVisibility(View.GONE);
            } else {
                holder.llShopcartHeader.setVisibility(View.VISIBLE);
            }
        }else {
            // position = 0
            holder.llShopcartHeader.setVisibility(View.VISIBLE);
        }

        System.out.println("holder = " + list.get(position).getShopName());


        holder.tvItemShopcartClothColor.setText("颜色:" + list.get(position).getColor());
        holder.tvItemShopcartClothSize.setText("尺寸:" + list.get(position).getSize());
        holder.tvItemShopcartClothname.setText(list.get(position).getProductName());
        holder.tvItemShopcartShopname.setText(list.get(position).getShopName());
        holder.tvItemShopcartClothPrice.setText("¥" + list.get(position).getPrice());
        holder.etItemShopcartClothNum.setText(list.get(position).getCount() + "");




        Glide.with(context).load(list.get(position).getDefaultPic()).into(holder.ivItemShopcartClothPic);


        //标记 商品是否被选中
        if(list.get(position).isSelect()){
            holder.tvItemShopcartClothselect.setImageDrawable(context.getResources().getDrawable(R.drawable.shopcart_selected));
        }else {
            holder.tvItemShopcartClothselect.setImageDrawable(context.getResources().getDrawable(R.drawable.shopcart_unselected));
        }

        //标记商店是否被选中
        if(list.get(position).isShopSelect()){
            holder.ivItemShopcartShopselect.setImageDrawable(context.getResources().getDrawable(R.drawable.shopcart_selected));
        }else {
            holder.ivItemShopcartShopselect.setImageDrawable(context.getResources().getDrawable(R.drawable.shopcart_unselected));
        }


        //?
        if(onRefershListener != null){
            boolean isSelect = false;

            for(int i=0;i<list.size();i++){
                if(!list.get(i).isSelect()){
                    isSelect = false;
                    // 只要有一个商品是 未选中的状态 ,全选按钮就是未选中
                    break;
                }else {
                    isSelect = true;
                }
            }
            onRefershListener.onRefersh(isSelect,list);

        }


        //删除事件 回调
        holder.ivItemShopcartClothDelete.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                if(onDeleteClickListener != null){
                    onDeleteClickListener.onDeleteClick(v,position,list.get(position).getId());
                }
                list.remove(position);
                //如果删除的是第一条数据(或者是 数据带有商户名称的数据) 更新数据源, 标记 那条数据 显示商户名称
                MainActivity.setFirstState(list);
                notifyDataSetChanged();
            }
        });

        //  - 商品数量事件
        holder.ivItemShopcartClothMinus.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                if(list.get(position).getCount() > 1){

                    int count = list.get(position).getCount() - 1 ;
                    list.get(position).setCount(count);
                    notifyDataSetChanged();
                    if(onEditListener != null){
                        onEditListener.onEditListener(position,list.get(position).getId(),count);
                    }
                }

            }
        });

        // + 商品数量事件
        holder.ivItemShopcartClothAdd.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                int count = list.get(position).getCount()+ 1 ;
                list.get(position).setCount(count);
                notifyDataSetChanged();

                if(onEditListener != null){
                    onEditListener.onEditListener(position,list.get(position).getId(),count);
                }

            }
        });

        //商品 选中和未选中 事件点击
        holder.tvItemShopcartClothselect.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                //标记 当前 item 的选中状态
                list.get(position).setSelect(!list.get(position).isSelect());

                for(int i=0;i<list.size();i++){
                    for(int j=0;j<list.size();j++){
                        //如果是同一家商铺的商品,并且其中一个商品是未选中,那么商铺的全选勾选取消
                        if(list.get(j).getShopId() == list.get(i).getShopId() && !list.get(j).isSelect()){
                            list.get(i).setShopSelect(false);
                            break;
                        } else {
                            //如果是同一家商铺的商品,并且所有商品是选中,那么商铺的选中全选勾选
                            list.get(i).setShopSelect(true);
                        }
                    }
                }
                notifyDataSetChanged();


            }
        });

        // 店铺 选中 yu 未选中
        holder.ivItemShopcartShopselect.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {


                if(list.get(position).getIsFirst() == 1){

                    // 三只松鼠 isShopSelect  false , isSelect false
//                    三只松鼠 isShopSelect   true  三只松鼠  isSelect true , 小米手环 true

                    list.get(position).setShopSelect(!list.get(position).isShopSelect());

                    for(int i=0;i<list.size();i++){

                        if(list.get(i).getShopId() == list.get(position).getShopId()){
                            list.get(i).setSelect(list.get(position).isShopSelect());
                        }

                    }
                    notifyDataSetChanged();

                }

            }
        });









    }


    // 全选
    public void setUnSelected(int selected){
        if(list != null && list.size() > 0){

            for (int i=0;i<list.size();i++){
                if(selected == 1){

                    list.get(i).setSelect(false);
                    list.get(i).setShopSelect(false);
                } else {
                    list.get(i).setSelect(true);
                    list.get(i).setShopSelect(true);

                }
            }
            notifyDataSetChanged();

        }

    }



    @Override
    public int getItemCount() {
        return list == null ? 0 : list.size() ;
    }


    // 点击事件

    public OnItemClickListener onItemClickListener;

    public interface OnItemClickListener {
        void onItemClick(View view, int position);
    }

    public void setOnItemClickListener(OnItemClickListener listener){
        this.onItemClickListener = listener ;
    }



    //删除
    public OnDeleteClickListener onDeleteClickListener;
    public interface OnDeleteClickListener {
        void onDeleteClick(View view, int position, int cartid);
    }

    public void setOnDeleteClickListener(OnDeleteClickListener deleteClickListener){
        this.onDeleteClickListener = deleteClickListener;
    }

    public OnEditListener onEditListener;
    //添加 减少
    public interface OnEditListener {
        void onEditListener(int position, int cartid, int count);
    }

    public void setOnEditListener(OnEditListener onEditListener){
        this.onEditListener = onEditListener;
    }


    // 商品 选中状态发生变化

    public OnRefershListener onRefershListener;

    public interface OnRefershListener{
        //isSelect true 表示商品全部选中 false 未全部选中
        void onRefersh(boolean isSelect, List<ShopBean.OrderDataBean.CartlistBean> list);
    }

    public void setOnRefershListener(OnRefershListener listener){
        this.onRefershListener = listener ;
    }








    class IViewHolder extends RecyclerView.ViewHolder{
        @BindView(R.id.view)
        View view;
        @BindView(R.id.iv_item_shopcart_shopselect)
        ImageView ivItemShopcartShopselect;
        @BindView(R.id.tv_item_shopcart_shopname)
        TextView tvItemShopcartShopname;
        @BindView(R.id.ll_shopcart_header)
        LinearLayout llShopcartHeader;
        @BindView(R.id.tv_item_shopcart_clothname)
        TextView tvItemShopcartClothname;
        @BindView(R.id.tv_item_shopcart_clothselect)
        ImageView tvItemShopcartClothselect;
        @BindView(R.id.iv_item_shopcart_cloth_pic)
        ImageView ivItemShopcartClothPic;
        @BindView(R.id.tv_item_shopcart_cloth_price)
        TextView tvItemShopcartClothPrice;
        @BindView(R.id.tv_item_shopcart_cloth_color)
        TextView tvItemShopcartClothColor;
        @BindView(R.id.tv_item_shopcart_cloth_size)
        TextView tvItemShopcartClothSize;
        @BindView(R.id.iv_item_shopcart_cloth_minus)
        ImageView ivItemShopcartClothMinus;
        @BindView(R.id.et_item_shopcart_cloth_num)
        TextView etItemShopcartClothNum;
        @BindView(R.id.iv_item_shopcart_cloth_add)
        ImageView ivItemShopcartClothAdd;
        @BindView(R.id.iv_item_shopcart_cloth_delete)
        ImageView ivItemShopcartClothDelete;

        public IViewHolder(View view) {
            super(view);
            ButterKnife.bind(this, view);
        }
    }
}

//Ben类

Bean类里的属性从json.xml文件里获取

//缓冲

public class StringUtils {

    public static String convertStreamToString(InputStream is) {
        /*
          * To convert the InputStream to String we use the BufferedReader.readLine()
          * method. We iterate until the BufferedReader return null which means
          * there's no more data to read. Each line will appended to a StringBuilder
          * and returned as String.
          */
        BufferedReader reader = new BufferedReader(new InputStreamReader(is));
        StringBuilder sb = new StringBuilder();

        String line = null;
        try {
            while ((line = reader.readLine()) != null) {
                sb.append(line);
            }
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            try {
                is.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }

        return sb.toString();
    }
}

//json.xml格式assets文件写在写在main文件下

//所需添加的依赖

 compile 'com.jakewharton:butterknife:8.8.1'
    annotationProcessor 'com.jakewharton:butterknife-compiler:8.8.1'
    compile 'com.android.support:recyclerview-v7:26.0.0-alpha1'
    compile 'com.github.bumptech.glide:glide:4.2.0'
    compile 'com.google.code.gson:gson:2.8.2'
    annotationProcessor 'com.github.bumptech.glide:compiler:4.2.0'
    annotationProcessor 'com.github.bumptech.glide:compiler:4.2.0'

 //布局文件

<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    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.bawei.ceshi.MainActivity">




    <android.support.v7.widget.RecyclerView
        android:id="@+id/third_recyclerview"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        />




    <LinearLayout
        android:layout_weight="0"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:background="#FFFFFF"
        android:gravity="center_vertical"
        android:id="@+id/third_pay_linear"
        >

        <TextView
            android:id="@+id/third_allselect"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginLeft="@dimen/margin_10dp"
            android:drawableLeft="@drawable/shopcart_selected"
            android:text="全选"
            android:drawablePadding="@dimen/padding_5dp"
            />

        <LinearLayout
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:orientation="vertical"
            >

            <TextView
                android:id="@+id/third_totalprice"
                android:layout_width="200dp"
                android:layout_height="wrap_content"
                android:paddingLeft="@dimen/padding_10dp"
                android:paddingTop="@dimen/padding_10dp"
                android:text="总价:"
                android:textColor="@color/cblack"
                android:textSize="@dimen/common_font_size_16"
                />

            <TextView
                android:textColor="@color/cblack"
                android:id="@+id/third_totalnum"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:paddingLeft="@dimen/padding_10dp"
                android:text="共0件商品"
                android:textSize="@dimen/common_font_size_14"
                android:paddingBottom="@dimen/padding_10dp"
                />

        </LinearLayout>

        <TextView
            android:id="@+id/third_submit"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="@drawable/login_btn"
            android:text="去结算"
            android:paddingLeft="@dimen/margin_30dp"
            android:paddingRight="@dimen/margin_30dp"
            android:paddingTop="@dimen/padding_10dp"
            android:paddingBottom="@dimen/padding_10dp"
            android:textColor="#000000"
            android:layout_marginRight="@dimen/margin_10dp"
            />

    </LinearLayout>


</LinearLayout>

//条目布局

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@color/cwhite">

    <LinearLayout
        android:id="@+id/ll_shopcart_header"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        >

        <View
            android:layout_width="match_parent"
            android:layout_height="@dimen/margin_10dp"
            android:background="@color/background_color"
            android:id="@+id/view"/>

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:gravity="center_vertical"
            >

            <ImageView
                android:id="@+id/iv_item_shopcart_shopselect"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:src="@drawable/shopcart_selected"
                android:paddingLeft="@dimen/margin_15dp"
                android:paddingRight="@dimen/margin_15dp"
                android:paddingTop="@dimen/margin_10dp"
                android:paddingBottom="@dimen/margin_10dp"
                />

            <TextView
                android:textColor="@color/cblack"
                android:id="@+id/tv_item_shopcart_shopname"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:drawableLeft="@drawable/shopcart_shop"
                android:text="宝儿家服装"
                android:padding="@dimen/padding_10dp"
                android:drawablePadding="@dimen/padding_5dp"
                />

        </LinearLayout>

    </LinearLayout>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center_vertical"
        >


        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical"
            >

            <View
                android:layout_width="match_parent"
                android:layout_height="@dimen/margin_1dp"
                android:background="@color/background_color"
                />

            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content">

                <ImageView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:src="@drawable/shopcart_selected"
                    android:layout_marginLeft="@dimen/margin_15dp"
                    android:layout_marginRight="@dimen/margin_15dp"
                    android:visibility="invisible"
                    />

                <TextView
                    android:textColor="@color/cblack"
                    android:id="@+id/tv_item_shopcart_clothname"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:text="穿秋装情侣字母徽章风衣"
                    android:paddingLeft="@dimen/padding_10dp"
                    android:paddingTop="@dimen/padding_10dp"
                    />
            </LinearLayout>
            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:orientation="horizontal"
                android:gravity="center_vertical"
                >

                <ImageView
                    android:id="@+id/tv_item_shopcart_clothselect"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:src="@drawable/shopcart_selected"
                    android:padding="@dimen/margin_15dp"
                    />

                <ImageView
                    android:id="@+id/iv_item_shopcart_cloth_pic"
                    android:layout_width="60dp"
                    android:layout_height="60dp"
                    android:layout_margin="@dimen/margin_10dp"
                    />

                <LinearLayout
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:layout_weight="1"
                    android:orientation="vertical"
                    >

                    <TextView
                        android:id="@+id/tv_item_shopcart_cloth_price"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="¥185"
                        android:textColor="@color/main_red_text"
                        android:textSize="@dimen/common_font_size_14"
                        />

                    <LinearLayout
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_marginTop="@dimen/margin_5dp"
                        android:layout_marginBottom="@dimen/margin_5dp"
                        >

                        <TextView
                            android:textColor="@color/cblack"
                            android:id="@+id/tv_item_shopcart_cloth_color"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:text="颜色:黑色"
                            android:textSize="@dimen/common_font_size_12"
                            />

                        <TextView
                            android:textColor="@color/cblack"
                            android:id="@+id/tv_item_shopcart_cloth_size"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:text="尺寸:XL"
                            android:textSize="@dimen/common_font_size_12"
                            android:layout_marginLeft="@dimen/margin_10dp"
                            />

                    </LinearLayout>

                    <LinearLayout
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:gravity="center_vertical"
                        >

                        <ImageView
                            android:id="@+id/iv_item_shopcart_cloth_minus"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:src="@drawable/shopcart_minus_grey"
                            />

                        <TextView
                            android:textColor="@color/cblack"
                            android:id="@+id/et_item_shopcart_cloth_num"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:paddingTop="@dimen/padding_2dp"
                            android:paddingBottom="@dimen/padding_2dp"
                            android:paddingLeft="@dimen/padding_20dp"
                            android:paddingRight="@dimen/padding_20dp"
                            android:background="@drawable/shopcart_add_btn"
                            android:layout_marginLeft="@dimen/margin_5dp"
                            android:text="1"
                            />

                        <ImageView
                            android:id="@+id/iv_item_shopcart_cloth_add"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:src="@drawable/shopcart_add_red"
                            android:layout_marginLeft="@dimen/margin_5dp"
                            />

                    </LinearLayout>


                </LinearLayout>

                <View
                    android:layout_width="@dimen/margin_1dp"
                    android:layout_height="match_parent"
                    android:layout_marginTop="@dimen/padding_10dp"
                    android:layout_marginBottom="@dimen/padding_10dp"
                    android:background="@color/splitline_color"
                    />

                <ImageView
                    android:id="@+id/iv_item_shopcart_cloth_delete"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:padding="@dimen/margin_20dp"
                    android:src="@drawable/shopcart_delete"
                    />

            </LinearLayout>



        </LinearLayout>

    </LinearLayout>

    <View
        android:layout_width="match_parent"
        android:layout_height="@dimen/margin_1dp"
        android:background="@color/background_color"
        />



</LinearLayout>

 //colors下的颜色

 <color name="cblack">#000000</color>
    <color name="cwhite">#FFFFFF</color>
    <color name="background_color">#f6f6f6</color>
    <color name="main_red_text">#e53e42</color>


    <color name="splitline_color">#dddddd</color>
    <color name="pressed_icon_color">#e53e42</color>

//dimens文件下的

   <dimen name="margin_10dp">10dp</dimen>


    <dimen name="padding_20dp">20dp</dimen>

    <dimen name="padding_5dp">5dp</dimen>
    <dimen name="padding_10dp">10dp</dimen>


    <dimen name="common_font_size_16">16sp</dimen>
    <dimen name="common_font_size_14">14sp</dimen>


    <dimen name="height_200dp">200dp</dimen>

    <dimen name="margin_30dp">30dp</dimen>
    <dimen name="margin_15dp">15dp</dimen>
    <dimen name="margin_1dp">1dp</dimen>
    <dimen name="margin_5dp">5dp</dimen>
    <dimen name="common_font_size_12">12sp</dimen>

    <dimen name="padding_2dp">2dp</dimen>
    <dimen name="margin_20dp">20dp</dimen>

//draweble文件下的shopcart_add_but.xml

 <corners android:radius="@dimen/height_200dp"></corners>
    <stroke android:color="@color/background_color" android:width="1dp"></stroke>

//draweble文件下的login.xml

<corners android:radius="@dimen/height_200dp"></corners>
    <solid android:color="@color/pressed_icon_color"></solid>
原文地址:https://www.cnblogs.com/yu12/p/7691999.html