activity_main

<?xml version="1.0" encoding="utf-8"?>                

MianActivity

public class MainActivity extends AppCompatActivity implements GroupPresenter.GroupListener, RightPresenter.RightListener {    RecyclerView mRecyclerView,recycle_right;    Madapter madapter;    RightAdapter rightAdapter;    RightPresenter rightPresenter;    GroupPresenter groupPresenter;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        mRecyclerView  =findViewById(R.id.recycle);        recycle_right = findViewById(R.id.recycle_right);        //设置左边布局        initLeft();        //设置右边布局   默认加载第一页        initRight("http://www.zhaoapi.cn/product/getProductCatagory?cid=1");    }    private void initRight(String urls) {        //p层        rightPresenter = new RightPresenter(this);        rightPresenter.loadData(urls);        //适配器        rightAdapter = new RightAdapter(MainActivity.this);        recycle_right.setAdapter(rightAdapter);        recycle_right.setLayoutManager(new LinearLayoutManager(MainActivity.this,LinearLayoutManager.VERTICAL,false));    }    private void initLeft() {        //左边布局  适配器        madapter = new Madapter(this);        mRecyclerView.setAdapter(madapter);        //p层  请求数据        groupPresenter = new GroupPresenter(this);        groupPresenter.requestData();        //布局管理器        mRecyclerView.setLayoutManager(new LinearLayoutManager(this,LinearLayoutManager.VERTICAL,false));        //条目点击        madapter.setMadapterListener(new Madapter.MadapterListener() {            @Override            public void setonitemclick(int cid) {              Log.e("哈哈哈哈哈哈哈哈哈哈",cid+"");                String path =  "http://www.zhaoapi.cn/product/getProductCatagory?cid="+cid;                 initRight(path);            }        });    }    @Override    public void datasuccess(List dataBeans) {        madapter.setData(dataBeans);    }    @Override    public void rightsuccess(List dataBeans) {       rightAdapter.setData(dataBeans);    }    @Override    protected void onDestroy() {        super.onDestroy();         rightPresenter = null;         groupPresenter=null;    }}

左边条目的适配器 Madapter

** * date:2018/11/21 * author:QMY(QMY) * function: */public class Madapter extends RecyclerView.Adapter {    private final MainActivity mainActivity;    private final List grouplist;    public Madapter(MainActivity mainActivity) {        this.mainActivity=mainActivity;        grouplist = new ArrayList<>();    }    @NonNull    @Override    public ViewHolder onCreateViewHolder(@NonNull ViewGroup viewGroup, int i) {        View view = View.inflate(mainActivity, R.layout.group, null);        ViewHolder viewHolder = new ViewHolder(view);        return viewHolder;    }    @Override    public void onBindViewHolder(@NonNull ViewHolder viewHolder, int i) {        viewHolder.tv.setText(grouplist.get(i).getName());        final GroupBean.DataBean bean = grouplist.get(i);        //条目点击事件        viewHolder.itemView.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                mMadapterListener.setonitemclick(bean.getCid());            }        });    }    @Override    public int getItemCount() {        return grouplist.size();    }    public void setData(List dataBeans) {        grouplist.clear();        grouplist.addAll(dataBeans);        notifyDataSetChanged();    }    public class ViewHolder extends RecyclerView.ViewHolder {        TextView tv;        public ViewHolder(@NonNull View itemView) {            super(itemView);            tv = itemView.findViewById(R.id.tv);        }    }    public interface  MadapterListener{        void setonitemclick(int cid);    }    public MadapterListener mMadapterListener;    public void setMadapterListener(MadapterListener madapterListener){        mMadapterListener=madapterListener;    }}

//右边第一个适配器

public class RightAdapter extends RecyclerView.Adapter {    private final List rightlist;    private final MainActivity mainActivity;    public RightAdapter(MainActivity mainActivity) {        this.mainActivity =mainActivity;        rightlist=new ArrayList<>();    }    @NonNull    @Override    public ViewHolder onCreateViewHolder(@NonNull ViewGroup viewGroup, int i) {        View view = View.inflate(mainActivity, R.layout.right, null);        ViewHolder viewHolder = new ViewHolder(view);        return viewHolder;    }    @Override    public void onBindViewHolder(@NonNull ViewHolder viewHolder, int i) {        viewHolder.name.setText(rightlist.get(i).getName());        List list = rightlist.get(i).getList();       RightAdapter1 rightAdapter1 = new RightAdapter1(list,mainActivity);       viewHolder.recycle_right1.setAdapter(rightAdapter1);       viewHolder.recycle_right1.setLayoutManager(new StaggeredGridLayoutManager(3,StaggeredGridLayoutManager.VERTICAL));       rightAdapter1.setOnItemClickListener(new RightAdapter1.OnItemClickListener() {           @Override           public void onItemClickListener(int layoutPosition) {               //点击条目的时候要根据点击的下标跳转到相应的页面,               // 所以需要拿到解析完的集合list.get(传过来的下标).地址                Intent intent = new Intent(mainactivity, Goods.class);                intent.putExtra("pscid",pscid);                activity.startActivity(intent);           }       });    }    @Override    public int getItemCount() {        return rightlist.size();    }    public void setData(List dataBeans) {        this.rightlist.clear();        rightlist.addAll(dataBeans);        notifyDataSetChanged();    }    public class ViewHolder extends RecyclerView.ViewHolder {        RecyclerView recycle_right1;        TextView name;        public ViewHolder(@NonNull View itemView) {            super(itemView);            recycle_right1 = itemView.findViewById(R.id.recycle_right1);            name = itemView.findViewById(R.id.name);        }    }

//右边下边适配

/** * date:2018/11/22 * author:QMY(QMY) * function: */class RightAdapter1 extends RecyclerView.Adapter {    private final List list;    private final MainActivity mainactivity;    public RightAdapter1(List list, MainActivity mainActivity) {        this.list=list;        this.mainactivity = mainActivity;    }    @NonNull    @Override    public ViewHolder onCreateViewHolder(@NonNull ViewGroup viewGroup, int i) {        View view = View.inflate(mainactivity, R.layout.right1, null);        ViewHolder viewHolder = new ViewHolder(view);        return viewHolder;    }    @Override    public void onBindViewHolder(@NonNull ViewHolder viewHolder, final int i) {        viewHolder.name.setText(list.get(i).getName());        ImageLoader.getInstance().displayImage(list.get(i).getIcon(),                viewHolder.image,ImageLoderConfigs.getimageoption(mainactivity));        viewHolder.name.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                mOnItemClickListener.onItemClickListener(list.get(i).getPscid());            }        });    }    @Override    public int getItemCount() {        return list.size();    }    public class ViewHolder extends RecyclerView.ViewHolder {        ImageView image;        TextView name;        public ViewHolder(@NonNull View itemView) {            super(itemView);            image = itemView.findViewById(R.id.image);            name = itemView.findViewById(R.id.name);        }    }    //实现接口    private OnItemClickListener mOnItemClickListener;    //创建接口    public interface OnItemClickListener{        void onItemClickListener(int layoutPosition);    }    //外界调用的方法    public void setOnItemClickListener(OnItemClickListener onItemClickListener) {        mOnItemClickListener= onItemClickListener;    }}

//左边条目p层

public class GroupPresenter {    public  void requestData(){       String path =  "http://www.zhaoapi.cn/product/getCatagory";        OkHttpUtils.getInstance().doGet(path, new OkHttpUtils.Utils() {            @Override            public void failed() {            }            @Override            public void success(String string) {                GroupBean groupBean = new Gson().fromJson(string, GroupBean.class);                mGroupListener.datasuccess(groupBean.getData());            }        });    }    public interface GroupListener{        void datasuccess(List dataBeans);    }    public GroupListener mGroupListener;    public GroupPresenter(GroupListener groupListener) {        mGroupListener = groupListener;    }}

右边p层

public class RightPresenter {     public void loadData(String urls){         OkHttpUtils.getInstance().doGet(urls, new OkHttpUtils.Utils() {             @Override             public void failed() {             }             @Override             public void success(String string) {                 //解析                 RightBean rightBean = new Gson().fromJson(string, RightBean.class);                 List data = rightBean.getData();                 Log.e("gsaga",rightBean+"");                 mRightListener.rightsuccess(data);             }         });     }     public interface  RightListener{         void rightsuccess(List dataBeans);     }     public RightListener mRightListener;    public RightPresenter(RightListener rightListener) {        mRightListener = rightListener;    }}

左边布局

<?xml version="1.0" encoding="utf-8"?>    

右上

<?xml version="1.0" encoding="utf-8"?>        

右下

<?xml version="1.0" encoding="utf-8"?>        

更多相关文章

  1. android notification应用
  2. Android(安卓)UI界面之TableLayout
  3. 一个旋转layout布局文件
  4. android修改默认桌面
  5. android内置歌曲
  6. 简单适配器加载列表
  7. kotlin如何使用FragmentPagerAdapter
  8. Android应用欢迎界面实现
  9. 自定义通知栏布局

随机推荐

  1. 「Android」将网页转换为PDF的初步实现
  2. Android小项目之十二 设置中心的界面
  3. 做自己的Android(安卓)ROM,屏蔽对framewor
  4. Android应用程序的开发
  5. Android(安卓)JNI 生成头文件
  6. Android(安卓)SDK 2.3与Eclipse最新版开
  7. Android内存管理机制和内存泄漏分析及优
  8. 《Android(安卓)开发入门》我认识中的And
  9. Android源码分析之WindowManager.LayoutP
  10. Android音视频处理技术 视频录制