您的位置:首页 > 其它

用base封装的mvp实现分类一面

2018-10-24 20:32 127 查看

依赖

implementation 'com.jakewharton:butterknife:8.8.1'
annotationProcessor 'com.jakewharton:butterknife-compiler:8.8.1'
implementation 'com.android.support:recyclerview-v7:27.1.1'
implementation 'com.squareup.retrofit2:retrofit:2.3.0'
implementation 'com.squareup.retrofit2:converter-gson:2.3.0'
implementation 'com.squareup.retrofit2:adapter-rxjava:2.1.0'
implementation 'com.squareup.okhttp3:okhttp:3.11.0'
implementation 'io.reactivex:rxjava:1.0.14'
implementation 'io.reactivex:rxandroid:1.0.1'
implementation 'com.facebook.fresco:fresco:0.12.0'
implementation 'com.hyman:flowlayout-lib:1.1.2'
implementation 'com.facebook.fresco:fresco:0.12.0'
implementation 'com.github.bumptech.glide:glide:4.8.0'

权限

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

Api接口

package com.example.asus.lianxi1022.model.api;

public interface Api {
String GETURL="http://www.zhaoapi.cn/";
}

ApiService接口

package com.example.asus.lianxi1022.model.api;

import com.example.asus.lianxi1022.model.bean.YouBean;
import com.example.asus.lianxi1022.model.bean.ZuoBean;

import retrofit2.http.FormUrlEncoded;
import retrofit2.http.GET;
import retrofit2.http.POST;
import retrofit2.http.Query;
import rx.Observable;

public interface ApiService {
@GET("product/getCatagory")
Observable<ZuoBean> getzuo();

@GET("product/getProductCatagory")
Observable<YouBean> getyou(@Query("cid") String cid);

}

YouBean类

package com.example.asus.lianxi1022.model.bean;

import java.util.List;

public class YouBean {

/**
* msg : 获取子分类成功
* code : 0
* data : [{"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"},{"cid":"1","list":[{"icon":"http://120.27.23.105/images/icon.png","name":"新鲜水果","pcid":2,"pscid":9},{"icon":"http://120.27.23.105/images/icon.png","name":"海鲜水产","pcid":2,"pscid":10},{"icon":"http://120.27.23.105/images/icon.png","name":"精选肉类","pcid":2,"pscid":11},{"icon":"http://120.27.23.105/images/icon.png","name":"蛋类","pcid":2,"pscid":12},{"icon":"http://120.27.23.105/images/icon.png","name":"新鲜蔬菜","pcid":2,"pscid":13},{"icon":"http://120.27.23.105/images/icon.png","name":"冷冻食品","pcid":2,"pscid":14},{"icon":"http://120.27.23.105/images/icon.png","name":"饮品甜品","pcid":2,"pscid":15},{"icon":"http://120.27.23.105/images/icon.png","name":"大闸蟹","pcid":2,"pscid":16}],"name":"京东生鲜","pcid":"2"},{"cid":"1","list":[{"icon":"http://120.27.23.105/images/icon.png","name":"大米","pcid":3,"pscid":21},{"icon":"http://120.27.23.105/images/icon.png","name":"面粉","pcid":3,"pscid":22},{"icon":"http://120.27.23.105/images/icon.png","name":"杂粮","pcid":3,"pscid":23},{"icon":"http://120.27.23.105/images/icon.png","name":"食用油","pcid":3,"pscid":24},{"icon":"http://120.27.23.105/images/icon.png","name":"调味品","pcid":3,"pscid":25},{"icon":"http://120.27.23.105/images/icon.png","name":"方便速食","pcid":3,"pscid":26},{"icon":"http://120.27.23.105/images/icon.png","name":"有机食品","pcid":3,"pscid":27}],"name":"粮油调味","pcid":"3"},{"cid":"1","list":[{"icon":"http://120.27.23.105/images/icon.png","name":"饮用水","pcid":4,"pscid":28},{"icon":"http://120.27.23.105/images/icon.png","name":"饮料","pcid":4,"pscid":29},{"icon":"http://120.27.23.105/images/icon.png","name":"牛奶乳品","pcid":4,"pscid":30},{"icon":"http://120.27.23.105/images/icon.png","name":"名茶","pcid":4,"pscid":31},{"icon":"http://120.27.23.105/images/icon.png","name":"蜂蜜","pcid":4,"pscid":32}],"name":"水饮茗茶","pcid":"4"},{"cid":"1","list":[{"icon":"http://120.27.23.105/images/icon.png","name":"白酒","pcid":5,"pscid":33},{"icon":"http://120.27.23.105/images/icon.png","name":"葡萄酒","pcid":5,"pscid":34},{"icon":"http://120.27.23.105/images/icon.png","name":"洋酒","pcid":5,"pscid":35},{"icon":"http://120.27.23.105/images/icon.png","name":"啤酒","pcid":5,"pscid":36},{"icon":"http://120.27.23.105/images/icon.png","name":"黄酒","pcid":5,"pscid":37},{"icon":"http://120.27.23.105/images/icon.png","name":"陈年老酒","pcid":5,"pscid":38}],"name":"中外名酒","pcid":"5"}]
*/

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;
}
}
}
}

ZuoBean类

package com.example.asus.lianxi1022.model.bean;

import java.util.List;

public class ZuoBean {

/**
* msg :
* code : 0
* data : [{"cid":1,"createtime":"2017-10-10T19:41:39","icon":"http://120.27.23.105/images/category/shop.png","ishome":1,"name":"京东超市"},{"cid":2,"createtime":"2017-10-10T19:41:39","icon":"http://120.27.23.105/images/category/qqg.png","ishome":1,"name":"全球购"},{"cid":3,"createtime":"2017-10-10T19:45:11","icon":"http://120.27.23.105/images/category/phone.png","ishome":1,"name":"手机数码"},{"cid":5,"createtime":"2017-10-10T20:12:03","icon":"http://120.27.23.105/images/category/man.png","ishome":1,"name":"男装"},{"cid":6,"createtime":"2017-10-10T20:12:03","icon":"http://120.27.23.105/images/category/girl.png","ishome":1,"name":"女装"},{"cid":7,"createtime":"2017-10-10T20:12:03","icon":"http://120.27.23.105/images/category/manshoe.png","ishome":1,"name":"男鞋"},{"cid":8,"createtime":"2017-10-10T20:12:03","icon":"http://120.27.23.105/images/category/girlshoe.png","ishome":1,"name":"女鞋"},{"cid":9,"createtime":"2017-10-10T20:12:03","icon":"http://120.27.23.105/images/category/shirt.png","ishome":1,"name":"内衣配饰"},{"cid":10,"createtime":"2017-10-10T20:12:03","icon":"http://120.27.23.105/images/category/bag.png","ishome":1,"name":"箱包手袋"},{"cid":11,"createtime":"2017-10-10T20:12:03","icon":"http://120.27.23.105/images/category/beauty.png","ishome":1,"name":"美妆个护"},{"cid":12,"createtime":"2017-10-10T20:12:03","icon":"http://120.27.23.105/images/category/jewel.png","ishome":1,"name":"钟表珠宝"},{"cid":13,"createtime":"2017-10-10T20:12:03","icon":"http://120.27.23.105/images/category/luxury.png","ishome":1,"name":"奢侈品"},{"cid":14,"createtime":"2017-10-10T20:12:03","icon":"http://120.27.23.105/images/category/computer.png","ishome":1,"name":"电脑办公"},{"cid":15,"createtime":"2017-09-29T10:13:48","icon":"http://120.27.23.105/images/icon.png","ishome":0,"name":"家用电器"},{"cid":16,"createtime":"2017-09-29T10:13:48","icon":"http://120.27.23.105/images/icon.png","ishome":0,"name":"食品生鲜"},{"cid":17,"createtime":"2017-09-29T10:13:48","icon":"http://120.27.23.105/images/icon.png","ishome":0,"name":"
20000
酒水饮料"},{"cid":18,"createtime":"2017-09-29T10:13:48","icon":"http://120.27.23.105/images/icon.png","ishome":0,"name":"母婴童装"},{"cid":19,"createtime":"2017-09-29T10:13:48","icon":"http://120.27.23.105/images/icon.png","ishome":0,"name":"玩具乐器"},{"cid":20,"createtime":"2017-09-29T10:13:48","icon":"http://120.27.23.105/images/icon.png","ishome":0,"name":"医药保健"}]
*/

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;
}
}
}

ModelImpl类

package com.example.asus.lianxi1022.model.modelimpl;

import com.example.asus.lianxi1022.model.bean.YouBean;
import com.example.asus.lianxi1022.model.bean.ZuoBean;
import com.example.asus.lianxi1022.model.util.OkHttpUtil;

import java.util.List;

import rx.Observer;
import rx.android.schedulers.AndroidSchedulers;
import rx.schedulers.Schedulers;

public class ModelImpl {

public interface onCallBackLintener {
void resposeData(List<ZuoBean.DataBean> data);

}

public void zuodata(final onCallBackLintener onCallBackLintener) {
OkHttpUtil.getInstance().apiService.getzuo()
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new Observer<ZuoBean>() {
@Override
public void onCompleted() {

}

@Override
public void onError(Throwable e) {

}

@Override
public void onNext(ZuoBean zuoBean) {
List<ZuoBean.DataBean> data = zuoBean.getData();
onCallBackLintener.resposeData(data);
}
});

}

public interface  onCallBackchild {
void resposeyou(List<YouBean.DataBean> data);
}

public void youdata(int cid, final onCallBackchild onCallBackchild) {
//      String cid2 = String.valueOf(cid);
OkHttpUtil.getInstance().apiService.getyou(cid+"")
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new Observer<YouBean>() {
@Override
public void onCompleted() {

}

@Override
public void onError(Throwable e) {

}

@Override
public void onNext(YouBean youBean) {
List<YouBean.DataBean> data = youBean.getData();
onCallBackchild.resposeyou(data);
}
});

}
}

baseModel类

package com.example.asus.lianxi1022.model.modelimpl;

public class BaseModel {
}

OkHttp类

package com.example.asus.lianxi1022.model.util;

import com.example.asus.lianxi1022.model.api.Api;
import com.example.asus.lianxi1022.model.api.ApiService;

import retrofit2.Retrofit;
import retrofit2.adapter.rxjava.RxJavaCallAdapterFactory;
import retrofit2.converter.gson.GsonConverterFactory;

public class OkHttpUtil {
private static final OkHttpUtil ourInstance = new OkHttpUtil();
public ApiService apiService;

public static OkHttpUtil getInstance() {
return ourInstance;
}

private OkHttpUtil() {
Retrofit retrofit = new Retrofit.Builder()
.baseUrl(Api.GETURL)
.addCallAdapterFactory(RxJavaCallAdapterFactory.create())
.addConverterFactory(GsonConverterFactory.create())
.build();
apiService = retrofit.create(ApiService.class);
}
}

MainPresenter类

package com.example.asus.lianxi1022.presenter;

import com.example.asus.lianxi1022.model.bean.YouBean;
import com.example.asus.lianxi1022.model.bean.ZuoBean;
import com.example.asus.lianxi1022.model.modelimpl.ModelImpl;

import java.util.List;

public class MainPresenter extends BasePresenter{

private final ModelImpl model;

public MainPresenter() {
model = new ModelImpl();
}

public void getinfodata() {
model.zuodata(new ModelImpl.onCallBackLintener() {
@Override
public void resposeData(List<ZuoBean.DataBean> data) {
iView.onsuccess(data);
}
});
}

public void getchilddata(int cid) {

model.youdata( cid ,new ModelImpl.onCallBackchild(){

@Override
public void resposeyou(List<YouBean.DataBean> data) {
iView.onsuccesschild(data);

}
});
}
}

BasePresenter类

package com.example.asus.lianxi1022.presenter;

import com.example.asus.lianxi1022.view.iView.IBaseView;
import com.example.asus.lianxi1022.view.iView.IMainView;

public class BasePresenter <IView extends IMainView> {
IView  iView;
public void attch(IView  iView){
this.iView=iView;
}
public void delech(){
this.iView=null;
}
public IView  getiView(){
return iView;
}
}

MainActivity类

package com.example.asus.lianxi1022.view.activity;

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

import com.example.asus.lianxi1022.R;
import com.example.asus.lianxi1022.model.bean.YouBean;
import com.example.asus.lianxi1022.model.bean.ZuoBean;
import com.example.asus.lianxi1022.presenter.MainPresenter;
import com.example.asus.lianxi1022.view.adapter.YouAdapter;
import com.example.asus.lianxi1022.view.adapter.ZuoAdapter;
import com.example.asus.lianxi1022.view.iView.IMainView;

import java.util.List;

import butterknife.BindView;
import butterknife.ButterKnife;

public class MainActivity extends AppCompatActivity implements IMainView {

@BindView(R.id.zuo_recycler)
RecyclerView zuoRecycler;
@BindView(R.id.you_recycler)
RecyclerView youRecycler;
private MainPresenter mainPresenter;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ButterKnife.bind(this);
mainPresenter = new MainPresenter();
mainPresenter.attch(this);
mainPresenter.getinfodata();

}

@Override
public void onsuccess(final List<ZuoBean.DataBean> zuo) {
LinearLayoutManager linearLayoutManager = new LinearLayoutManager(MainActivity.this);
linearLayoutManager.setOrientation(LinearLayoutManager.VERTICAL);
zuoRecycler.setLayoutManager(linearLayoutManager);

ZuoAdapter  zuoAdapter= new ZuoAdapter(zuo, MainActivity.this);

zuoRecycler.setAdapter(zuoAdapter);
zuoAdapter.setOnitmeclickLinsenter(new ZuoAdapter.onitmeclickLinsenter() {
@Override
public void onclick(int position) {
//Toast.makeText(MainActivity.this, "第"+position, Toast.LENGTH_SHORT).show();
int cid = zuo.get(position).getCid();
mainPresenter.getchilddata(cid);

}
});
}

@Override
public void onsuccesschild(List<YouBean.DataBean> you) {

youRecycler.setLayoutManager(new LinearLayoutManager(MainActivity.this,LinearLayoutManager.VERTICAL,false));

YouAdapter  adapter=new YouAdapter(you,MainActivity.this);
youRecycler.setAdapter(adapter);

}

@Override
protected void onDestroy() {
super.onDestroy();
mainPresenter.delech();
}

}

FenneibuAdapter类

package com.example.asus.lianxi1022.view.adapter;

import android.content.Context;
import android.support.annotation.NonNull;
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.asus.lianxi1022.R;
import com.example.asus.lianxi1022.model.bean.YouBean;

import java.util.List;

public class FenneibuAdapter extends RecyclerView.Adapter<FenneibuAdapter.FenHodel> {
List<YouBean.DataBean.ListBean> list;
Context context;

public FenneibuAdapter(List<YouBean.DataBean.ListBean> list, Context context) {
this.list = list;
this.context = context;
}

@NonNull
@Override
public FenHodel onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
View view = LayoutInflater.from(context).inflate(R.layout.show, parent, false);
FenHodel fenHodel = new FenHodel(view);
return fenHodel;
}

@Override
public void onBindViewHolder(@NonNull FenHodel holder, int position) {
String icon = list.get(position).getIcon();
Glide.with(context).load(icon).into(holder.imag2) ;
holder.textView.setText(list.get(position).getName());

}

@Override
public int getItemCount() {

return list.size();
}

class FenHodel extends RecyclerView.ViewHolder {
private  ImageView imag2;
private  TextView textView;

public FenHodel(View itemView) {
super(itemView);
imag2 = itemView.findViewById(R.id.fen_imag);
textView = itemView.findViewById(R.id.fen_text);
}
}
}

YouAdapter类

package com.example.asus.lianxi1022.view.adapter;

import android.content.Context;
import android.support.annotation.NonNull;
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.asus.lianxi1022.R;
import com.example.asus.lianxi1022.model.bean.YouBean;

import java.util.List;

public class YouAdapter extends RecyclerView.Adapter<YouAdapter.MyHodel> {
List<YouBean.DataBean> you;
Context context;

public YouAdapter(List<YouBean.DataBean> you, Context context) {
this.you = you;
this.context = context;
}

@NonNull
@Override
public MyHodel onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
View view = LayoutInflater.from(context).inflate(R.layout.youitme, parent, false);
MyHodel myHodel = new MyHodel(view);
return myHodel;
}

@Override
public void onBindViewHolder(@NonNull MyHodel holder, int position) {
List<YouBean.DataBean.ListBean> list = you.get(position).getList();

holder.you_itme.setText(you.get(position).getName());

holder.recyclerView.setLayoutManager(new GridLayoutManager(context, 3));
holder.recyclerView.setAdapter(new FenneibuAdapter(list, context));
}

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

class MyHodel extends RecyclerView.ViewHolder {

private TextView you_itme;
private RecyclerView recyclerView;

public MyHodel(View itemView) {
super(itemView);

you_itme = itemView.findViewById(R.id.you_itme);
recyclerView = itemView.findViewById(R.id.you_recyclerview);
}
}

}

zuoAdapter类

package com.example.asus.lianxi1022.view.adapter;

import android.content.Context;
import android.support.annotation.NonNull;
import android.support.v7.widget.RecyclerView;
import android.text.Layout;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;

import com.example.asus.lianxi1022.R;
import com.example.asus.lianxi1022.model.bean.ZuoBean;

import java.util.List;

public class ZuoAdapter extends RecyclerView.Adapter<ZuoAdapter.MyHoldel> {
List<ZuoBean.DataBean> zuo;
Context context;

public ZuoAdapter(List<ZuoBean.DataBean> zuo, Context context) {
this.zuo = zuo;
this.context = context;
}

@NonNull
@Override
public MyHoldel onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
View view = LayoutInflater.from(context).inflate(R.layout.zuoitme, parent, false);
MyHoldel myHoldel = new MyHoldel(view);
return myHoldel;
}

@Override
public void onBindViewHolder(@NonNull MyHoldel holder, int position) {
holder.text1.setText(zuo.get(position).getName());
}

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

class MyHoldel extends RecyclerView.ViewHolder implements View.OnClickListener {

private final TextView text1;

public MyHoldel(View itemView) {
super(itemView);
text1 = itemView.findViewById(R.id.zuo_text1);
itemView.setOnClickListener(this);
}

@Override
public void onClick(View view) {
if (itemView != null) {
int layoutPosition = getLayoutPosition();
onitmeclickLinsenter.onclick(layoutPosition);
}
}
}

onitmeclickLinsenter onitmeclickLinsenter;

public interface onitmeclickLinsenter {
void onclick(int position);
}

public void setOnitmeclickLinsenter(ZuoAdapter.onitmeclickLinsenter onitmeclickLinsenter) {
this.onitmeclickLinsenter = onitmeclickLinsenter;
}
}

IBaseView接口

package com.example.asus.lianxi1022.view.iView;

public interface IBaseView {
}

IMainView接口

package com.example.asus.lianxi1022.view.iView;

import com.example.asus.lianxi1022.model.bean.YouBean;
import com.example.asus.lianxi1022.model.bean.ZuoBean;

import java.util.List;

public interface IMainView extends IBaseView{

void onsuccess(List<ZuoBean.DataBean> zuo);

void onsuccesschild(List<YouBean.DataBean> you);
}
 
 
 

 

 

 

阅读更多
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: