private PullToRefreshListView pullToRefreshListView; private LinkedList<Goods.DataBean.IndexothersBean> linkedList=new LinkedList<>(); private ImageLoader imageLoader; private MAdapter mAdapter; private String url="http://www.meirixue.com/api.php?c=index&a=index"; @Nullable @Override public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { View view = inflater.inflate(R.layout.item, container, false); imageLoader=ImageLoader.getInstance(); pullToRefreshListView = view.findViewById(R.id.pull_refresh); pullToRefreshListView.setMode(PullToRefreshListView.Mode.BOTH); mAdapter=new MAdapter(); pullToRefreshListView.setAdapter(mAdapter); pullToRefreshListView.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener2<ListView>() { @Override public void onPullDownToRefresh(PullToRefreshBase<ListView> pullToRefreshBase) { linkedList.clear(); new MAsyncTask().execute(url); } @Override public void onPullUpToRefresh(PullToRefreshBase<ListView> pullToRefreshBase) { new MAsyncTask().execute(url); } }); return view; } class MAdapter extends BaseAdapter{ @Override public int getCount() { return linkedList.size(); } @Override public Object getItem(int i) { return linkedList.get(i); } @Override public long getItemId(int i) { return i; } @Override public View getView(int i, View view, ViewGroup viewGroup) { view = View.inflate(getActivity(), R.layout.item2, null); ImageView imageView = view.findViewById(R.id.iv); TextView textView = view.findViewById(R.id.tv); imageLoader.displayImage(linkedList.get(i).getCourse_pic(),imageView); textView.setText(linkedList.get(i).getCourse_name()); return view; } } class MAsyncTask extends AsyncTask<String,Void,String>{ @Override protected String doInBackground(String... strings) { String string = strings[0]; String netjson = NetWordUtils.getNetjson(string); return netjson; } @Override protected void onPostExecute(String s) { super.onPostExecute(s); Gson gson=new Gson(); Goods goods = gson.fromJson(s, Goods.class); List<Goods.DataBean.IndexothersBean> indexothers = goods.getData().getIndexothers(); linkedList.addAll(indexothers); mAdapter.notifyDataSetChanged(); pullToRefreshListView.onRefreshComplete(); } }
PullToRefreshListView的使用
最新推荐文章于 2018-09-18 19:46:22 发布