XlistView刷新加载和Banner轮播
来源:互联网 发布:it服务外包最大 编辑:程序博客网 时间:2024/06/05 01:17
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.TextView;import com.bwei.monthsynthesize_demo.R;import com.bwei.monthsynthesize_demo.bean.XlvData;import com.bwei.monthsynthesize_demo.utils.NetWorlUtil;import com.bwie.xlistviewlibrary.View.XListView;import com.google.gson.Gson;import com.nostra13.universalimageloader.core.ImageLoader;import com.youth.banner.Banner;import java.text.SimpleDateFormat;import java.util.ArrayList;import java.util.Arrays;import java.util.Date;import java.util.List;public class ChildFrag2 extends Fragment implements XListView.IXListViewListener { private String urlstrs = "http://api.expoon.com/AppNews/getNewsList/type/1/p/1"; private String[] urls1 = { "http://f2.kkmh.com/image/160715/42qtqpfsd.webp-w188", "http://f2.kkmh.com/image/171114/Q4Cv0N6hO.webp-w640", "http://f2.kkmh.com/image/160511/chrrrrs4v.webp-w640", "http://f2.kkmh.com/image/171114/9c70n8gv4.webp-w640" }; private XListView xListView; List<XlvData.DataBean> list = new ArrayList<XlvData.DataBean>(); private Myxlvadapter myxlvadapter; private ImageLoader instance; @Nullable @Override public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { View view = View.inflate(getActivity(), R.layout.childfrag2_layout, null); return view; } @Override public void onViewCreated(View view, @Nullable Bundle savedInstanceState) { super.onViewCreated(view, savedInstanceState); xListView = view.findViewById(R.id.xlv); View inflate = View.inflate(getActivity(), R.layout.banner_layout, null); //获取bannerview Banner vbanner = inflate.findViewById(R.id.banner); //设置图片工具 vbanner.setImageLoader(new MyImageloader()); //设置图片 vbanner.setImages(Arrays.asList(urls1)); //开启 vbanner.start(); //添加到XListView头部 xListView.addHeaderView(inflate); instance = ImageLoader.getInstance(); //设置支持上下拉加载 xListView.setPullLoadEnable(true); //设置xlistView事件 xListView.setXListViewListener(this); //设置适配器 myxlvadapter = new Myxlvadapter(); xListView.setAdapter(myxlvadapter); //获取数据 getInit(); } //初始化数据 private void getInit() { new MAsyncTask().execute(urlstrs); } //下拉刷新 @Override public void onRefresh() { list.clear(); getInit(); } //上拉加载 @Override public void onLoadMore() { getInit(); } //适配器 private class Myxlvadapter extends BaseAdapter { @Override public int getCount() { return list.size(); } @Override public Object getItem(int i) { return null; } @Override public long getItemId(int i) { return 0; } @Override public View getView(int i, View view, ViewGroup viewGroup) { Holder holder = null; if (view == null) { holder = new Holder(); view = View.inflate(getActivity(), R.layout.childfrag_item_layout, null); holder.tv = view.findViewById(R.id.tv); holder.iv = view.findViewById(R.id.iv); view.setTag(holder); } else { holder = (Holder) view.getTag(); } holder.tv.setText(list.get(i).getNews_title()); instance.displayImage(list.get(i).getPic_url(), holder.iv,new NetWorlUtil().getDisk()); return view; } } class Holder { TextView tv; ImageView iv; } //刷新完成后隐藏头部和底部 public void complet(){ xListView.stopRefresh(); xListView.stopLoadMore(); Date date = new Date(); SimpleDateFormat simpleDateFormat = new SimpleDateFormat(); xListView.setRefreshTime(simpleDateFormat.format(date)); } //Asynctask类 private class MAsyncTask extends AsyncTask<String, Void, String> { @Override protected String doInBackground(String... strings) { return NetWorlUtil.getNetJson(strings[0]); } @Override protected void onPostExecute(String s) { super.onPostExecute(s); XlvData xlvData = new Gson().fromJson(s, XlvData.class); List<XlvData.DataBean> data1 = xlvData.getData(); list.addAll(data1); myxlvadapter.notifyDataSetChanged(); complet(); } } 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); } }}
阅读全文
0 0
- XlistView刷新加载和Banner轮播
- xlistview+banner无限轮播
- XlistView的上拉刷新下拉加载 和Fragment 和无限轮播
- Banner轮播 + XlistView 网络获取数据
- PullToRefreshListView加载和Banner轮播
- banner实现无限轮播+下拉刷新上拉加载+ 下拉时 listview 和轮播图一起刷新
- 轮播和Xlistview
- XlistView上拉刷新下拉加载+轮播+添加头布局
- HttpURLConnection网络解析+universalimageloader解析图片+XListView刷新、加载+无限轮播
- XListView上拉加载和下拉刷新
- XListView上啦刷新和下拉加载
- xlistview上拉刷新和下拉加载
- 上拉加载和下拉刷新(XListView)
- android 上拉下拉刷新和banner轮播广告条 Github 项推荐
- banner控件实现无线轮播+PullToRefreshScrollView 轮播图和listview跟着一起刷新
- Xlistview加载刷新小案列
- XListView刷新、加载
- xlistview刷新 加载方法
- TabLayout和banner与XLISTView混合运用
- OpenGL – Lighting
- selenium之 chromedriver与chrome版本映射表(更新至v2.33
- java调用打印机
- jemeter如何下载安装
- XlistView刷新加载和Banner轮播
- 在 Linux 上创建虚拟机规模集和部署高度可用的应用
- Paper Reading:Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields
- html图片加载失败时显示默认图片
- ubuntu和windows实现互相之间远程控制
- 基于Jquery的表格的动态增加删除
- T-MVP开发模式
- 【浅度渣文】JVM——G1收集器
- Spring Data Jpa 和 Hiberate 的Criteria API的区别