public class Childf1 extends Basefragment { private PullToRefreshListView pull; String url = "https://api.fang.anjuke.com/m/android/1.3/shouye/recInfosV3/?city_id=14&lat=40.04652&lng=116.306033&api_key=androidkey&sig=9317e9634b5fbc16078ab07abb6661c5&macid=45cd2478331b184ff0e15f29aaa89e3e&app=a-ajk&_pid=11738&o=PE-TL10-user+4.4.2+HuaweiPE-TL10+CHNC00B260+ota-rel-keys%2Crelease-keys&from=mobile&m=Android-PE-TL10&cv=9.5.1&cid=14&i=864601026706713&v=4.4.2&pm=b61&uuid=1848c59c-185d-48d9-b0e9-782016041109&_chat_id=0&qtime=20160411091603"; List<com.bawei.day15_conghe2.Bean.bean.ResultBean.RowsBean> list=new ArrayList<>(); private ImageLoader instance; private Myadaper m; List<String> img=new ArrayList<>(); private Banner ban; private ListView listView; @Override protected void initEvent() { } @Override protected void initData() { //设置可以上拉加载更多; pull.setMode(PullToRefreshListView.Mode.BOTH); //获取listview listView = pull.getRefreshableView(); m = new Myadaper(getActivity(),list,instance); listView.setAdapter(m); pull.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener2<ListView>() { //下拉刷新 @Override public void onPullDownToRefresh(PullToRefreshBase<ListView> pullToRefreshBase) { // 清空集合, list.clear(); //重新请求数据;更新适配器 getNetData(); } //上拉加载 @Override public void onPullUpToRefresh(PullToRefreshBase<ListView> pullToRefreshBase) { getNetData(); } }); //添加头部 View view = View.inflate(getActivity(), R.layout.header_1, null); listView.addHeaderView(view); ban = view.findViewById(R.id.ban); getNetData(); } @Override protected void initFindViewById(View view) { pull = view.findViewById(R.id.pull); } @Override protected View initView(LayoutInflater inflater, ViewGroup container) { instance = ImageLoader.getInstance(); View inflate = inflater.inflate(R.layout.ch1, container, false); return inflate; } private void getNetData() { new MyAsynctask().execute(url); } class MyAsynctask extends AsyncTask<String,Void,String>{ @Override protected String doInBackground(String... strings) { return Netutils.getNetJson(strings[0]); } @Override protected void onPostExecute(String s) { super.onPostExecute(s); Gson g=new Gson(); bean bean = g.fromJson(s, bean.class); List<com.bawei.day15_conghe2.Bean.bean.ResultBean.RowsBean> rows = bean.getResult().getRows(); list.addAll(rows); for (int a=0;a<rows.size()-1;a++){ img.add(rows.get(a).getInfo().getDefault_image()); } //刷新适配器 m = new Myadaper(getActivity(),list,instance); listView.setAdapter(m); //配置重写好的加载图片的类 ban.setImageLoader(new Myloader()); //需要传入一个图片地址的集合 ban.setImages(img); //设置自动轮播,默认为true ban.isAutoPlay(true); //设置轮播时间 ban.setDelayTime(1000); //开启轮播 ban.start(); pull.onRefreshComplete();//关闭刷新头和底部; } } /** * 这个类是Banner中的一个类;我们进行重写; */ private class Myloader extends com.youth.banner.loader.ImageLoader{ @Override public void displayImage(Context context, Object path, ImageView imageView) { instance.displayImage((String)path,imageView,Netutils.getDisplayImageOption()); } } }
使用addHeaderView给PullToRefreshListView添加Banner
最新推荐文章于 2017-11-21 10:01:44 发布