//Model层
public class FenModel { public interface NewFenModel{ void getSuccess(FenLei fenlei); } NewFenModel newFenModel; public void getFenModel(NewFenModel newFenModel){ this.newFenModel=newFenModel; } Handler handler=new Handler(){ @Override public void handleMessage(Message msg) { super.handleMessage(msg); if(msg.what==0){ FenLei fenlei= (FenLei) msg.obj; if(newFenModel!=null){ newFenModel.getSuccess(fenlei); } } } }; public void getFenLei(String s){ OkHttpClient okHttpClient=new OkHttpClient(); Request request=new Request.Builder().url(s).build(); okHttpClient.newCall(request).enqueue(new Callback() { @Override public void onFailure(Call call, IOException e) { } @Override public void onResponse(Call call, Response response) throws IOException { String string = response.body().string(); Gson gson=new Gson(); FenLei fenLei = gson.fromJson(string, FenLei.class); Message message=new Message(); message.what=0; message.obj=fenLei; handler.sendMessage(message); } }); } }//Presenter层
public class FenPresenter { FenModel fenModel; FenView fenView; public FenPresenter(FenView fenView) { this.fenView = fenView; fenModel=new FenModel(); } public void getFenPresenter(String s){ fenModel.getFenLei(s); fenModel.getFenModel(new FenModel.NewFenModel() { @Override public void getSuccess(FenLei fenlei) { fenView.OnSuccess(fenlei); } }); } }
//View层
public interface FenView { void OnSuccess(FenLei fenLei); }
//展示页面
public class Fragment1 extends Fragment implements SyView{ private View view; private Banner mVp; private RecyclerView mRlv; private SwipyRefreshLayout mSrl; private List<String> list; String url = "https://www.zhaoapi.cn/ad/getAd"; @Nullable @Override public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { View view = inflater.inflate(R.layout.fragment1, container, false); initView(view); list = new ArrayList<>(); SyPresenter syPresenter = new SyPresenter(this); syPresenter.getSyPresenter(url); mRlv.setLayoutManager(new GridLayoutManager(getActivity(), 2)); mSrl.setColorSchemeResources(R.color.colorAccent); mSrl.setOnRefreshListener(new SwipyRefreshLayout.OnRefreshListener() { @Override public void onRefresh(int index) { } @Override public void onLoad(int index) { } }); return view; } private void initView(View view) { mVp = (Banner) view.findViewById(R.id.vp); mRlv = (RecyclerView) view.findViewById(R.id.rlv); mSrl = (SwipyRefreshLayout) view.findViewById(R.id.srl); } @Override public void OnSuccess(ShouYe shouYe) { List<ShouYe.DataBean> data = shouYe.getData(); for (int i = 0; i < data.size(); i++) { String icon = data.get(i).getIcon(); this.list.add(icon); } mVp.setImages(this.list); mVp.setImageLoader(new Img()); mVp.start(); ShouYe.MiaoshaBean miaosha = shouYe.getMiaosha(); List<ShouYe.MiaoshaBean.ListBeanX> list = miaosha.getList(); MyAdapter myAdapter = new MyAdapter(getActivity(), list); mRlv.setAdapter(myAdapter); } }