我自己写的一个 Demo 小白学习
1.导入 xUtils 依赖
implementation'org.xutils:xutils:3.3.36'
2.记得在MyApplication 的 onCreate()方法里初始化。要不然会 请求不到的。 还要在 AndroidManifest.xml 中指定 name
下面写 Fragment 的使用
private ArrayListmFragment;//存储 Fragment
private ArrayListmList;// 存储 TabLayout 文字
1.在Oncreate方法里 实例化
mFragment =new ArrayList<>();
mList =new ArrayList<>();
2.添加 tablayout 头文字
mList.add("全部订单");
mList.add("消费记录");
mList.add("充值记录");
mList.add("好友转入");
mList.add("好友转出");
mList.add("提现记录");
3.遍历 mList 创建 Fragment 利用 Bundle 传递你要的参数
for (int i =0; i MsgFragment msgFragment =new MsgFragment(); String string =mList.get(i).toString(); if (string.equals("全部订单")){ Bundle bundle =new Bundle(); bundle.putString("tage",""); msgFragment.setArguments(bundle); } if (string.equals("消费记录")){ Bundle bundle =new Bundle(); bundle.putString("tage","5"); msgFragment.setArguments(bundle); } if (string.equals("充值记录")){ Bundle bundle =new Bundle(); bundle.putString("tage","3"); msgFragment.setArguments(bundle); } if (string.equals("好友转入")){ Bundle bundle =new Bundle(); bundle.putString("tage","8"); msgFragment.setArguments(bundle); } if (string.equals("好友转出")){ Bundle bundle =new Bundle(); bundle.putString("tage","6"); msgFragment.setArguments(bundle); } if (string.equals("提现记录")){ Bundle bundle =new Bundle(); bundle.putString("tage","9"); msgFragment.setArguments(bundle); } mFragment.add(msgFragment); } //下面的是 TabLayout +ViewPager 适配器 ViewPagerAdapter viewPagerAdapter =new ViewPagerAdapter(getSupportFragmentManager(),mFragment,mList); view_pager.setAdapter(viewPagerAdapter); 在往下我们要到 Fragment 去接收我们的参数。 Bundle arguments = getArguments(); String tage = arguments.getString("tage"); 下一步我们做网络请求: 定义一个方法去 做请求 postPost(tage); tage 就是我们传过来的标识 private void postPost(String tage) { mList.clear();// 每次请求都清空 集合 RequestParams params =new RequestParams(ApiUtils.URL+ApiUtils.ORDER);// 这个是请求的地址 params.addBodyParameter("page","");// 这个是需要传到后台的参数 params.addBodyParameter("ordertype",tage);// 这个是需要传到后台的参数 params.addBodyParameter("pagesize","");// 这个是需要传到后台的参数 // 下面这个是token 不需要的 可以不写 params.addHeader("accesstoken",SpUtils.getString(getContext(),"token","")); x.http().request(HttpMethod.POST, params,new Callback.CacheCallback() { private RecyAdapterrecyAdapter; @Override// 这里是请求成功的回调 public void onSuccess(String result) { Log.e("result",result.toString()); try { JSONObject jsonObject =new JSONObject(result.toString()); if (jsonObject.optString("code").equals("1")){ Gson gson =new Gson(); Benas benas = gson.fromJson(result, Benas.class); List data = benas.getData(); mList.addAll(data); recyAdapter =new RecyAdapter(R.layout.item_order,mList); recyclerViewADAP.setAdapter(recyAdapter); } }catch (JSONException e) { e.printStackTrace(); } } @Override public void onError(Throwable ex,boolean isOnCallback) { } @Override public void onCancelled(CancelledException cex) { } @Override public void onFinished() { } @Override public boolean onCache(String result) { return false; } }); } 结束! Fragment 简单复用。请勿吐槽。我也是刚学些 最后附上 请求回来的截图