你的位置:首页 > 软件开发 > 操作系统 > RecyclerView和PullToRefreshListView的对比

RecyclerView和PullToRefreshListView的对比

发布时间:2016-10-13 15:00:06
项目中上拉刷新和下拉加载一直都是比较常见的;以前一般都是重写ListView或直接用PullToRefreshListView的框架;最近尝试用RecyclerView来实现下拉加载上拉刷新也是不错的。如图是Demo的效果图:第一个效果图是用RecyclerView实现加的几个静 ...

RecyclerView和PullToRefreshListView的对比

项目中上拉刷新和下拉加载一直都是比较常见的;以前一般都是重写ListView或直接用PullToRefreshListView的框架;最近尝试用RecyclerView来实现下拉加载上拉刷新也是不错的。

如图是Demo的效果图:

RecyclerView和PullToRefreshListView的对比RecyclerView和PullToRefreshListView的对比RecyclerView和PullToRefreshListView的对比

第一个效果图是用RecyclerView实现加的几个静态数据;

第二个是参考别人写的RefreshRecyclerView来实现上拉刷新下拉加载;我只是把他的静态数据改成网络的数据;不过原先那个有点问题我发现在2次以上的刷新加载后布局会混乱刷新的item竟然复制了一份漂浮在界面上方跟着屏幕一起在滑动!感觉蛮好玩的

第三个是用的PullToRefreshListView来实现的数据和第二个一样都是网络接数据

demo的下载地址:http://download.csdn.net/detail/qq_29774291/9648634

如下是主要代码

 1 package com.item.my.jiejie.activity; 2  3 import java.util.ArrayList; 4 import java.util.List; 5 import com.item.my.jiejie.R; 6 import com.item.my.jiejie.adpter.MyAdapterThree; 7 import com.item.my.jiejie.adpter.MyAdapterThree.OnItemClickListener; 8 import com.item.my.jiejie.view.DividerItemDecoration; 9 import android.app.Activity;10 import android.os.Bundle;11 import android.support.v7.widget.DefaultItemAnimator;12 import android.support.v7.widget.LinearLayoutManager;13 import android.support.v7.widget.RecyclerView;14 import android.widget.Toast;15 16 /**17  * 用RecyclerView实现18  * @author Administrator19  *20 */21 public class MyRecyleActivity extends Activity{22   private RecyclerView mRecyclerView;23   private List<String> mDataStrings;24   private MyAdapterThree adapter;25   @Override26   protected void onCreate(Bundle savedInstanceState) {27     // TODO Auto-generated method stub28     super.onCreate(savedInstanceState);29     setContentView(R.layout.activity_myrecyle);30     initData();31     mRecyclerView = (RecyclerView)findViewById(R.id.my_recyler);32     mRecyclerView.setLayoutManager(new LinearLayoutManager(this));33     adapter = new MyAdapterThree(this, mDataStrings);34     mRecyclerView.setAdapter(adapter);35     //即给RecyclerView添加分隔线36     mRecyclerView.addItemDecoration(new DividerItemDecoration(MyRecyleActivity.this, LinearLayoutManager.VERTICAL));37     //设置RecyclerView添加或删除条目的动画38     mRecyclerView.setItemAnimator(new DefaultItemAnimator());39     //给RecyclerView设置点击事件40     adapter.setOnItemClickListener(new OnItemClickListener() {41       42       @Override43       public void onLongClick(int position) {44         // TODO Auto-generated method stub45         Toast.makeText(MyRecyleActivity.this, "onLongClick你点击了:" + position, Toast.LENGTH_SHORT).show();46       }47       48       @Override49       public void onClick(int position) {50         // TODO Auto-generated method stub51         Toast.makeText(MyRecyleActivity.this, "onClick 你点击了:" + position, Toast.LENGTH_SHORT).show();52       }53     });54   }55   /**56    * 添加数据57   */58   private void initData() {59     // TODO Auto-generated method stub60     mDataStrings = new ArrayList<String>();61     for (int i = 'A'; i < 'z'; i++)62     {63       mDataStrings.add("" + (char) i);64     }65   }66   67 }

原标题:RecyclerView和PullToRefreshListView的对比

关键词:ie

ie
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。