public class MyFragment extends Fragment { private int pageIndex = 1; private MyAdapter adapter; String url = "http://v.juhe.cn/toutiao/index?type="; String url1 ="&key=b6573217b60ba1627d928ab26f5e4652"; private List<MyJson.ResultBean.DataBean> list1 = new ArrayList<>(); private Bundle arguments; private PullToRefreshListView xlv; private MyData db; private String urls; @Nullable @Override public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { View view = inflater.inflate(R.layout.myfragment,container,false); db = new MyData(getActivity()); arguments = getArguments(); urls = url+ arguments.getString("type")+url1; xlv = view.findViewById(R.id.pull); xlv.setMode(PullToRefreshBase.Mode.BOTH); xlv.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener2<ListView>() { @Override public void onPullDownToRefresh(PullToRefreshBase<ListView> pullToRefreshBase) { pageIndex=1; getData(); } @Override public void onPullUpToRefresh(PullToRefreshBase<ListView> pullToRefreshBase) { pageIndex=2; getData(); } }); if (NetStateUtil.isConn(getActivity())){ MyTask myTask = new MyTask(new MyTask.ICallBacks() { @Override public void getJson(String json) { db.insetData(urls,json); Gson gson = new Gson(); MyJson myJson = gson.fromJson(json, MyJson.class); list1 = myJson.getResult().getData(); setadapter(); } }); myTask.execute(url+arguments.getString("type")+url1); getData(); }else { Toast.makeText(getActivity(),"当前无网络",Toast.LENGTH_SHORT).show(); String s = db.queryData(urls); Gson gson = new Gson(); MyJson myJson = gson.fromJson(s, MyJson.class); list1 = myJson.getResult().getData(); setadapter(); } xlv.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) { Intent intent = new Intent(getActivity(), WebViewPage.class); intent.putExtra("uri", list1.get(i-1).getUrl()); startActivity(intent); } }); return view; } @SuppressLint("SimpleDateFormat") private void setadapter() { if (adapter==null){ /*Date date = new Date(System.currentTimeMillis()); SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH-mm-ss"); String format = simpleDateFormat.format(date); xlv.setRefreshTime(format);*/ adapter = new MyAdapter(getActivity(),list1); xlv.setAdapter(adapter); }else { adapter.notifyDataSetChanged(); } } public void getData() { MyTask myTask = new MyTask(new MyTask.ICallBacks() { @Override public void getJson(String json) { Gson gson = new Gson(); MyJson myJson = gson.fromJson(json, MyJson.class); if (pageIndex==1){ list1.clear(); } list1.addAll(myJson.getResult().getData()); new Handler().postDelayed(new Runnable() { @Override public void run() { xlv.onRefreshComplete(); } },1000); setadapter(); } }); myTask.execute(urls); } }