package com.lbp.demo9.frag; import android.content.Context; import android.os.AsyncTask; import android.os.Bundle; import android.support.annotation.Nullable; import android.support.v4.app.Fragment; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.BaseAdapter; import android.widget.ImageView; import android.widget.ListView; import android.widget.TextView; import com.google.gson.Gson; import com.handmark.pulltorefresh.library.PullToRefreshBase; import com.handmark.pulltorefresh.library.PullToRefreshListView; import com.lbp.demo9.R; import com.lbp.demo9.bean.MyBean; import com.lbp.demo9.util.GetJsonUtil; import com.nostra13.universalimageloader.core.ImageLoader; import com.youth.banner.Banner; import java.util.ArrayList; import java.util.List; /** * Created by Administrator on 2017/11/16 0016. */ public class ChildFragment1 extends Fragment{ private PullToRefreshListView pill; private String uristr1; private List<MyBean.DataBean> list = new ArrayList<>(); int aa=1; private String uristr="http://www.93.gov.cn/93app/data.do?channelId=0&startNum=15"; private MyAdapter adapter; private Banner ban123; private List<String> listdata = new ArrayList<>(); @Nullable @Override public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { View view = inflater.inflate(R.layout.child1,container,false); View view1 = View.inflate(getActivity(), R.layout.banner123, null); pill = view.findViewById(R.id.pull_refresh_list); pill.setMode(PullToRefreshBase.Mode.BOTH); ListView refreshableView = pill.getRefreshableView(); new MyTask().execute(uristr); ban123 = view1.findViewById(R.id.ban123); refreshableView.addHeaderView(view1); seturi(aa+""); new MYAsyncTask().execute(uristr1); adapter = new MyAdapter(); refreshableView.setAdapter(adapter); pill.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener2<ListView>() { @Override public void onPullDownToRefresh(PullToRefreshBase<ListView> refreshView) { list.clear(); aa=1; seturi(aa+""); new MYAsyncTask().execute(uristr1); } @Override public void onPullUpToRefresh(PullToRefreshBase<ListView> refreshView) { aa++; seturi(aa+""); new MYAsyncTask().execute(uristr1); } }); return view; } class MyAdapter extends BaseAdapter { @Override public int getCount() { return list.size(); } @Override public Object getItem(int i) { return list.get(i); } @Override public long getItemId(int i) { return i; } @Override public View getView(int i, View view, ViewGroup viewGroup) { if(view==null){ view = View.inflate(getActivity(), R.layout.item, null); } TextView tv = view.findViewById(R.id.tv); tv.setText(list.get(i).getTITLE()); return view; } } class MYAsyncTask extends AsyncTask<String,Void,String> { @Override protected String doInBackground(String... strings) { String s = GetJsonUtil.getjson(strings[0]); return s; } @Override protected void onPostExecute(String s) { super.onPostExecute(s); Gson gson = new Gson(); MyBean bean = gson.fromJson(s, MyBean.class); List<MyBean.DataBean> data = bean.getData(); list.addAll(data); adapter.notifyDataSetChanged(); pill.onRefreshComplete(); } } public void seturi(String aa){ uristr1 = "http://www.93.gov.cn/93app/data.do?channelId=0&startNum="+aa; } class MyTask extends AsyncTask<String,Void,String>{ @Override protected String doInBackground(String... strings) { String s = GetJsonUtil.getjson(strings[0]); return s; } @Override protected void onPostExecute(String s) { super.onPostExecute(s); Gson gson = new Gson(); MyBean bean = gson.fromJson(s, MyBean.class); List<MyBean.DataBean> data = bean.getData(); for (int i = 0; i < data.size() ; i++) { listdata.add(data.get(i).getIMAGEURL()); } ban123.setImageLoader(new MyImageloader()); ban123.setImages(listdata); ban123.start(); } } private class MyImageloader extends com.youth.banner.loader.ImageLoader { @Override public void displayImage(Context context, Object path, ImageView imageView) { ImageLoader.getInstance().displayImage((String)path,imageView); } } }
PullToRefreshListView和Banner相连使用
最新推荐文章于 2018-11-22 14:34:11 发布