京东分类页面

本文详细介绍了京东分类页面的实现过程,从权限管理到各个模块的构建,包括依赖配置、布局设计、主要活动(MainActivity)的编写,以及text_item、item、group_item等组件的使用。同时,文章还涉及到了bean层的CatagoryBean和GroupGoodsBean数据结构,以及util工具类中如OkhttpUtil和GsonObjectCallback的实现。在模型层(Model),讲解了IShowCardModel和ShowCardModel接口及其实现,接着在presenter层实现了OnItemClickListner和ShowGoodsPresenter。在视图层(View),定义了IShowCardView接口及MainActivity的实现。最后,探讨了adapter层的MyAdapter、TextViewHolder、GroupAdapter和LeftAdapter等适配器的用法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

权限

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

依赖

compile 'com.github.bumptech.glide:glide:3.7.0'
    compile 'com.jcodecraeer:xrecyclerview:1.5.9'
    api 'com.squareup.okhttp3:okhttp:3.9.1'
    compile 'com.squareup.okhttp3:logging-interceptor:3.4.1'
    compile 'com.google.code.gson:gson:2.8.2'

布局
mainactivity

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    android:orientation="horizontal"
    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.example.zld.kaoshiday10.MainActivity">
    <android.support.v7.widget.RecyclerView
        android:id="@+id/left_list"
        android:layout_width="100dp"
        android:layout_height="match_parent"></android.support.v7.widget.RecyclerView>

    <android.support.v7.widget.RecyclerView
        android:id="@+id/right_list"
        android:layout_marginLeft="20dp"
        android:layout_width="match_parent"
        android:layout_height="match_parent"></android.support.v7.widget.RecyclerView>
</LinearLayout>

text_item

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    android:orientation="vertical"
    android:background="#fff"
    xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent"
    android:layout_height="wrap_content">
   <!-- <ImageView
        android:layout_width="80dp"
        android:layout_height="80dp"
        android:id="@+id/left_img"
        />-->
    <TextView
        android:id="@+id/left_title"
        android:padding="20dp"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />
</LinearLayout>

item

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    android:orientation="vertical"
    xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent"
    android:layout_height="match_parent">
    <ImageView
        android:id="@+id/myimg"
        android:layout_width="match_parent"
        android:layout_height="60dp" />

    <TextView
        android:gravity="center"
        android:id="@+id/mytitle"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="10dp" />
</LinearLayout>

group_item

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    android:orientation="vertical"
    xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent"
    android:layout_height="match_parent">
    <TextView
        android:id="@+id/item_title"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:padding="10dp"/>
    <android.support.v7.widget.RecyclerView
        android:id="@+id/item_list"
        android:background="#fff"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"></android.support.v7.widget.RecyclerView>
</LinearLayout>

bean
CatagoryBean

package com.example.zld.kaoshiday10.bean;

import java.util.List;

/**
 * Created by zld on 2018/4/20.
 */

public class CatagoryBean {
    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 {
        /**
         * cid : 1
         * createtime : 2017-10-10T19:41:39
         * icon : http://120.27.23.105/images/category/shop.png
         * ishome : 1
         * name : 京东超市
         */

        private int cid;
        private String createtime;
        private String icon;
        private int ishome;
        private String name;

        public int getCid() {
            return cid;
        }

        public void setCid(int cid) {
            this.cid = cid;
        }

        public String getCreatetime() {
            return createtime;
        }

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

        public String getIcon() {
            return icon;
        }

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

        public int getIshome() {
            return ishome;
        }

        public void setIshome(int ishome) {
            this.ishome = ishome;
        }

        public String getName() {
            return name;
        }

        public void setName(String name) {
            this.name = name;
        }
    }
}

GroupGoodsBean

package com.example.zld.kaoshiday10.bean;

import java.util.List;

/**
 * Created by zld on 2018/4/20.
 */

public class GroupGoodsBean {
    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 {
        /**
         * cid : 1
         * list : [{"icon":"http://120.27.23.105/images/icon.png","name":"月饼","pcid":1,"pscid":1},{"icon":"http://120.27.23.105/images/icon.png","name":"坚果炒货","pcid":1,"pscid":2},{"icon":"http://120.27.23.105/images/icon.png","name":"糖巧","pcid":1,"pscid":3},{"icon":"http://120.27.23.105/images/icon.png","name":"休闲零食","pcid":1,"pscid":4},{"icon":"http://120.27.23.105/images/icon.png","name":"肉干肉脯","pcid":1,"pscid":5},{"icon":"http://120.27.23.105/images/icon.png","name":"饼干蛋糕","pcid":1,"pscid":6},{"icon":"http://120.27.23.105/images/icon.png","name":"蜜饯果干","pcid":1,"pscid":7},{"icon":"http://120.27.23.105/images/icon.png","name":"无糖食品","pcid":1,"pscid":8}]
         * name : 休闲零食
         * pcid : 1
         */

        private String cid;
        private String name;
        private String pcid;
        private List<ListBean> list;

        public String getCid() {
            return cid;
        }

        public void setCid(String cid) {
            this.cid = cid;
        }

        public String getName() {
            return name;
        }

        public void setName(String name) {
            this.name = name;
        }

        public String getPcid() {
            return pcid;
        }

        public void setPcid(String pcid) {
            this.pcid = pcid;
        }

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

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

        public static class ListBean {
            /**
             * icon : http://120.27.23.105/images/icon.png
             * name : 月饼
             * pcid : 1
             * pscid : 1
             */

            private String icon;
            private String name;
            private int pcid;
            private int pscid;

            public String getIcon() {
                return icon;
            }

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

            public String getName() {
                return name;
            }

            public void setName(String name) {
                this.name = name;
            }

            public int getPcid() {
                return pcid;
            }

            public void setPcid(int pcid) {
                this.pcid = pcid;
            }

            public int getPscid() {
                return pscid;
            }

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

utils
OkhttpUtil

package com.example.zld.kaoshiday10.utils;

import android.os.Environment;

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

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

/**
 * Created by zld on 2018/4/20.
 */

public class OkhttpUtil {
    private static OkhttpUtil util;

    private OkhttpUtil() {
    }

    public OkhttpUtil getInstance() {
        if (util == null) {
            synchronized (OkhttpUtil.class) {
                if (util == null) {
                    util = new OkhttpUtil();
                }
            }
        }
        return util;
    }
    private static OkHttpClient okHttpClient;
    private static  OkHttpClient getOkHttpClient(){

        if(okHttpClient==null){
            File sdcache = new File(Environment.getExternalStorageDirectory(), "cache");
            int cacheSize = 10 * 1024 * 1024;
            okHttpClient=new OkHttpClient.Builder()
                    .connectTimeout(15, TimeUnit.SECONDS)
                    .cache(new Cache(sdcache,cacheSize))
                    .build();
        }
        return okHttpClient;
    }
    /**
     * get请求
     * 参数1 url
     * 参数2 回调Callback
     */

    public static void doGet(String url, Callback callback) {

        //创建OkHttpClient请求对象
        OkHttpClient okHttpClient = getOkHttpClient();
        //创建Request
        Request request = new Request.Builder().url(url).build();
        //得到Call对象
        Call call = okHttpClient.newCall(request);
        //执行异步请求
        call.enqueue(callback);


    }
    /**
     * post请求
     * 参数1 url
     * 参数2 回调Callback
     */

    public static void doPost(String url, Map<String, String> params, Callback callback) {

        //创建OkHttpClient请求对象
        OkHttpClient okHttpClient = getOkHttpClient();
        //3.x版本post请求换成FormBody 封装键值对参数
        FormBody.Builder builder = new FormBody.Builder();
        //遍历集合
        for (String key : params.keySet()) {
            builder.add(key, params.get(key));
        }
        //创建Request
        Request request = new Request.Builder().url(url).post(builder.build()).build();

        Call call = okHttpClient.newCall(request);
        call.enqueue(callback);

    }

}

GsonObjectCallback

package com.example.zld.kaoshiday10.utils;

import android.os.Handler;

import com.google.gson.Gson;

import java.io.IOException;
import java.lang.reflect.ParameterizedType;
import java.lang.reflect.Type;

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

/**
 * Created by zld on 2018/4/20.
 */

public abstract class GsonObjectCallback<T>implements Callback {
    private Handler handler = new Handler();

    //主线程处理
    public abstract void onUi(T t);

    //主线程处理
    public abstract void onFailed(Call call, IOException e);

    //请求失败
    @Override
    public void onFailure(final Call call, final IOException e) {
        handler.post(new Runnable() {
            @Override
            public void run() {
                onFailed(call, e);
            }
        });
    }

    //请求json 并直接返回泛型的对象 主线程处理
    @Override
    public void onResponse(Call call, Response response) throws IOException {
        String json = response.body().string();
        Class<T> cls = null;

        Class clz = this.getClass();
        ParameterizedType type = (ParameterizedType) clz.getGenericSuperclass();
        Type[] types = type.getActualTypeArguments();
        cls = (Class<T>) types[0];
        Gson gson = new Gson();
        final T t = gson.fromJson(json, cls);
        handler.post(new Runnable() {
            @Override
            public void run() {
                onUi(t);
            }
        });
    }
}

Model
IShowCardModel

package com.example.zld.kaoshiday10.model;

import com.example.zld.kaoshiday10.bean.CatagoryBean;
import com.example.zld.kaoshiday10.bean.GroupGoodsBean;
import com.example.zld.kaoshiday10.utils.GsonObjectCallback;

/**
 * Created by zld on 2018/4/20.
 */

public interface IShowCardModel {
    void getRightData(String url, GsonObjectCallback<GroupGoodsBean> callback);
    void getGoodsCard(String url, GsonObjectCallback<CatagoryBean> callback);
}

ShowCardModel

package com.example.zld.kaoshiday10.model;

import com.example.zld.kaoshiday10.bean.CatagoryBean;
import com.example.zld.kaoshiday10.bean.GroupGoodsBean;
import com.example.zld.kaoshiday10.utils.GsonObjectCallback;
import com.example.zld.kaoshiday10.utils.OkhttpUtil;

/**
 * Created by zld on 2018/4/20.
 */

public class ShowCardModel implements IShowCardModel {

    @Override
    public void getRightData(String url, GsonObjectCallback<GroupGoodsBean> callback) {
        OkhttpUtil.doGet(url,callback);
    }

    @Override
    public void getGoodsCard(String url, GsonObjectCallback<CatagoryBean> callback) {
        OkhttpUtil.doGet(url,
                callback);
    }
}

presenter
OnItemClickListner

package com.example.zld.kaoshiday10.presenter;

import android.view.View;

/**
 * Created by zld on 2018/4/20.
 */

public interface OnItemClickListner {
    void onItemClick(View view, int cid);
}

ShowGoodsPresenter

package com.example.zld.kaoshiday10.presenter;

import com.example.zld.kaoshiday10.bean.CatagoryBean;
import com.example.zld.kaoshiday10.bean.GroupGoodsBean;
import com.example.zld.kaoshiday10.model.ShowCardModel;
import com.example.zld.kaoshiday10.utils.GsonObjectCallback;
import com.example.zld.kaoshiday10.view.IShowCardView;

import java.io.IOException;
import java.lang.ref.WeakReference;
import java.util.List;

import okhttp3.Call;

/**
 * Created by zld on 2018/4/20.
 */

public class ShowGoodsPresenter {
    private WeakReference<IShowCardView> reference;
    private ShowCardModel model;

    public ShowGoodsPresenter() {
        model = new ShowCardModel();
    }

    public void attachView(IShowCardView view) {
        reference = new WeakReference<IShowCardView>(view);
    }

    public void detachView(IShowCardView view) {
        if (reference != null) {
            reference.clear();
            reference = null;
        }
    }

    public void getGoodsList() {
        //获取图一左侧分类列表
        model.getGoodsCard("https://www.zhaoapi.cn/product/getCatagory", new GsonObjectCallback<CatagoryBean>() {
            @Override
            public void onUi(CatagoryBean o) {
                //图一左侧分类列表加载完成以后,右侧默认显示第一个分类对应的商品子分类列表
                if (o != null && o.getData() != null) {
                    List<CatagoryBean.DataBean> bean = o.getData();
                    if (bean != null) {
                        reference.get().showCardData(bean);
                        if (bean.size() > 0) {
                            getRightData(bean.get(0).getCid());
                        }
                    } else {
                        reference.get().showError("数据为空");
                    }
                }
            }

            @Override
            public void onFailed(Call call, IOException e) {
                reference.get().showError(e.getMessage());
            }
        });

    }
    //获取图一右侧列表数据
    public void showRightList(int cid){
        getRightData(cid);
    }
    private void getRightData(int cid){
        model.getRightData("https://www.zhaoapi.cn/product/getProductCatagory?cid="
                + cid, new GsonObjectCallback<GroupGoodsBean>() {
            @Override
            public void onUi(GroupGoodsBean groupGoodsBean) {
                if (groupGoodsBean != null && groupGoodsBean.getData() != null) {
                    reference.get().showRightData(groupGoodsBean.getData());
                }
            }

            @Override
            public void onFailed(Call call, IOException e) {

            }
        });
    }
}

view
IShowCardView

package com.example.zld.kaoshiday10.view;

import com.example.zld.kaoshiday10.bean.CatagoryBean;
import com.example.zld.kaoshiday10.bean.GroupGoodsBean;

import java.util.List;

/**
 * Created by zld on 2018/4/20.
 */

public interface IShowCardView {
    void showRightData(List<GroupGoodsBean.DataBean> data);
    void showCardData(List<CatagoryBean.DataBean> data);

    void showError(String error);
}

MainActivity

package com.example.zld.kaoshiday10;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.view.View;
import android.widget.Toast;

import com.example.zld.kaoshiday10.adapter.GroupAdapter;
import com.example.zld.kaoshiday10.adapter.LeftAdapter;
import com.example.zld.kaoshiday10.bean.CatagoryBean;
import com.example.zld.kaoshiday10.bean.GroupGoodsBean;
import com.example.zld.kaoshiday10.presenter.OnItemClickListner;
import com.example.zld.kaoshiday10.presenter.ShowGoodsPresenter;
import com.example.zld.kaoshiday10.view.IShowCardView;

import java.util.List;

public class MainActivity extends AppCompatActivity implements IShowCardView {

    private RecyclerView leftList, rightList;
    private LeftAdapter adapter;
    private GroupAdapter groupAdapter;
    private ShowGoodsPresenter presenter;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        leftList = findViewById(R.id.left_list);
        rightList = findViewById(R.id.right_list);
        leftList.setLayoutManager(new LinearLayoutManager(MainActivity.this));
        rightList.setLayoutManager(new LinearLayoutManager(MainActivity.this));
        groupAdapter = new GroupAdapter(MainActivity.this);
        rightList.setAdapter(groupAdapter);
        presenter = new ShowGoodsPresenter();
        presenter.attachView(this);
        presenter.getGoodsList();

    }

    @Override
    public void showRightData(List<GroupGoodsBean.DataBean> data) {
        groupAdapter.updateData(data);
    }

    @Override
    public void showCardData(List<CatagoryBean.DataBean> data) {
        LeftAdapter adapter = new LeftAdapter(MainActivity.this, data);
        leftList.setAdapter(adapter);
        adapter.setClick(new OnItemClickListner() {
            @Override
            public void onItemClick(View view, int cid) {
                presenter.showRightList(cid);
            }
        });
    }

    @Override
    public void showError(String error) {
        Toast.makeText(MainActivity.this, error, Toast.LENGTH_SHORT).show();
    }

    @Override
    protected void onDestroy() {
        super.onDestroy();
        presenter.detachView(this);
    }
}

adapter
MyAdapter

package com.example.zld.kaoshiday10.adapter;

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

import com.bumptech.glide.Glide;
import com.example.zld.kaoshiday10.R;
import com.example.zld.kaoshiday10.bean.GroupGoodsBean;

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

/**
 * Created by zld on 2018/4/20.
 */

public class MyAdapter  extends RecyclerView.Adapter<TextViewHolder>{
    private ArrayList<GroupGoodsBean.DataBean.ListBean> list = new ArrayList<>();
    private Context context;
    public MyAdapter(Context context) {
        this.context = context;
    }
    public void addData(List<GroupGoodsBean.DataBean.ListBean> data){
        this.list.addAll(data);
        notifyDataSetChanged();
    }
    @Override
    public TextViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
        View view = LayoutInflater.from(context).inflate(R.layout.item, null);
        return new TextViewHolder(view);
    }

    @Override
    public void onBindViewHolder(TextViewHolder holder, int position) {
        holder.textView.setText(list.get(position).getName());
        Glide.with(context).load(list.get(position).getIcon()).into(holder.img);
    }

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

TextViewHolder

package com.example.zld.kaoshiday10.adapter;

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

import com.example.zld.kaoshiday10.R;

/**
 * Created by zld on 2018/4/20.
 */

public class TextViewHolder extends RecyclerView.ViewHolder {
    public TextView textView;
    public ImageView img;
    public TextViewHolder(View itemView) {
        super(itemView);
        textView=(TextView)itemView.findViewById(R.id.mytitle);
        img=(ImageView)itemView.findViewById(R.id.myimg);
    }
}

GroupAdapter

package com.example.zld.kaoshiday10.adapter;

import android.content.Context;
import android.support.v7.widget.GridLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;

import com.example.zld.kaoshiday10.R;
import com.example.zld.kaoshiday10.bean.GroupGoodsBean;

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

/**
 * Created by zld on 2018/4/20.
 */

public class GroupAdapter extends RecyclerView.Adapter<GroupViewHolder> {
    private List<GroupGoodsBean.DataBean> list = new ArrayList<>();
    private Context context;


    public GroupAdapter(Context context ) {
        this.context = context;
    }

    //刷新数据
    public void updateData(List<GroupGoodsBean.DataBean> list){
        this.list.clear();
        this.list.addAll(list);
        notifyDataSetChanged();
    }
    @Override
    public GroupViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
        View view = LayoutInflater.from(context).inflate(R.layout.group_item, null);

        return new GroupViewHolder(view);
    }

    @Override
    public void onBindViewHolder(GroupViewHolder holder, int position) {
        holder.textView.setText(list.get(position).getName());
        holder.recyclerView.setLayoutManager(new GridLayoutManager(context, 3));
        MyAdapter adapter = new MyAdapter(context);
        //为图一嵌套的recyclerview设置适配器
        holder.recyclerView.setAdapter(adapter);
        adapter.addData(list.get(position).getList());
    }

    @Override
    public int getItemCount() {
        return list.size();
    }
}
class GroupViewHolder extends RecyclerView.ViewHolder {
    public TextView textView;
    public RecyclerView recyclerView;

    public GroupViewHolder(View itemView) {
        super(itemView);
        textView = (TextView) itemView.findViewById(R.id.item_title);
        recyclerView = (RecyclerView) itemView.findViewById(R.id.item_list);
    }
}

LeftAdapter

package com.example.zld.kaoshiday10.adapter;

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.ImageView;
import android.widget.TextView;

import com.bumptech.glide.Glide;
import com.example.zld.kaoshiday10.R;
import com.example.zld.kaoshiday10.bean.CatagoryBean;
import com.example.zld.kaoshiday10.presenter.OnItemClickListner;

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

/**
 * Created by zld on 2018/4/20.
 */

public class LeftAdapter extends RecyclerView.Adapter<LeftViewHolder> {
    private List<CatagoryBean.DataBean> list = new ArrayList<>();

    private Context context;

    public LeftAdapter(Context context, List<CatagoryBean.DataBean> list) {
        this.context = context;
        this.list = list;
    }

    @Override
    public LeftViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
        View view = LayoutInflater.from(context).inflate(R.layout.text_item, parent,false);

        return new LeftViewHolder(view);
    }

    @Override
    public void onBindViewHolder(LeftViewHolder holder, final int position) {
        if(po==position){
            holder.textView.setTextColor(Color.RED);
            holder.textView.setBackgroundColor(Color.parseColor("#eeeeee"));
        }else {
            holder.textView.setTextColor(Color.BLACK);
            holder.textView.setBackgroundColor(Color.WHITE);
        }
        holder.textView.setText(list.get(position).getName());
      //  Glide.with(context).load(list.get(position).getIcon()).into(holder.limg);
        holder.textView.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                listner.onItemClick(v,list.get(position).getCid());
                po=position;
                notifyDataSetChanged();
            }
        });
    }
    private int po=0;
    @Override
    public int getItemCount() {
        return list.size();
    }

    //设置条目点击事件
    private OnItemClickListner listner;
    public void setClick(OnItemClickListner listner){
        this.listner=listner;
    }

}
class LeftViewHolder extends RecyclerView.ViewHolder {

    public TextView textView;
   // public   ImageView limg;

    public LeftViewHolder(View itemView) {
        super(itemView);
        textView = (TextView) itemView.findViewById(R.id.left_title);
       // limg = itemView.findViewById(R.id.left_img);
    }

}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值