横向滑动我在之前给大家分享了一个方法,无限轮播也有一个简单的例子,那么我们现在就可以做一个综合页面了
首先看一下效果图
那么我们如何把这些个东西全部添加进一个页面呢?
主要说一下适配器那个类把
首先就是我们需要定义的一些个属性,然后我们继续添加数据
接着就是OnCreate方法(主要执行加载View视图,并添加三个方法)
那么三个方法是什么作用?
我们继续往下看
private void getFind(View view) { Bundle arguments = getArguments();//得到值 String title = arguments.getString("title"); if (title.equals("头条")){ //并进行判断 banner = view.findViewById(R.id.xbanner); //获取banner资源ID images.add("https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1530244450653&di=54d7db42e73e45deb31acff7e0455b2b&imgtype=0&src=http%3A%2F%2Fpic.87g.com%2Fupload%2F2017%2F1013%2F20171013011300377.jpg"); images.add("http://imageprocess.yitos.net/images/public/20160910/99381473502384338.jpg"); images.add("http://imageprocess.yitos.net/images/public/20160910/77991473496077677.jpg"); images.add("http://imageprocess.yitos.net/images/public/20160906/1291473163104906.jpg"); banner.setData(images,null); banner.setmAdapter(new XBanner.XBannerAdapter() { // XBanner适配数据 @Override public void loadBanner(XBanner banner, View view, int position) { Glide.with(getActivity()).load(images.get(position)).into((ImageView) view); } }); banner.setPageTransformer(Transformer.Default); // 设置XBanner的页面切换特效 banner.setPageChangeDuration(1000); // 设置XBanner页面切换的时间,即动画时长 }else{ //如果不是第一页我们把轮播隐藏并加载getData方法 banner = view.findViewById(R.id.xbanner); banner.setVisibility(View.GONE); getData(); }
走到这里发现要继续走的方法是getData方法
那么我们继续看一下getData方法的作用
然后可以看出getData方法是加载数据给我们刷新的ListView的
那最后一个方法我想大家心里都有点底了
private void initview(View view) { pullToRefreshListView = view.findViewById(R.id.pulllistview);//找到ListView的资源ID pullToRefreshListView.setMode(PullToRefreshBase.Mode.BOTH); //给其设置上滑下滑的属性 ILoadingLayout loadingLayoutProxy = pullToRefreshListView.getLoadingLayoutProxy(true, false); loadingLayoutProxy.setPullLabel("下拉刷新"); loadingLayoutProxy.setRefreshingLabel("正在刷新"); loadingLayoutProxy.setReleaseLabel("刷新成功"); ILoadingLayout loadingLayoutProxy1 = pullToRefreshListView.getLoadingLayoutProxy(false, true); loadingLayoutProxy1.setPullLabel("上拉加载"); loadingLayoutProxy1.setRefreshingLabel("正在加载"); loadingLayoutProxy1.setReleaseLabel("加载成功");//添加监听 pullToRefreshListView.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener2<ListView>() { @Override public void onPullDownToRefresh(PullToRefreshBase<ListView> pullToRefreshBase) { page=1;//如果刷新 把page改为1 并再调用getData方法 getData(); handler.postDelayed(new Runnable() { @Override public void run() { pullToRefreshListView.onRefreshComplete(); } },2000); } @Override public void onPullUpToRefresh(final PullToRefreshBase<ListView> pullToRefreshBase) { page+=1;//如果加载就讲page+1再调用getData方法 getData(); handler.postDelayed(new Runnable() { @Override public void run() { pullToRefreshBase.onRefreshComplete(); } },2000); } }); adapter=new MyBase(list,getActivity());//最后设置适配器 pullToRefreshListView.setAdapter(adapter); }
那么写到这里就差不多了
希望这篇文章以及\前面的那些文章对大家有所帮助