RecyclerView的简单使用--------------(一)

来源:互联网 发布:网络策略 sftp 协议 编辑:程序博客网 时间:2024/06/05 10:55

        本人之前一直使用的ListView,今天项目中运用到了RecyclerView,就学习了RecyclerView的一些简单使用,下面来介绍一下使用姿势:

             RecyclerView是V7包下的,studio需要在配置文件加入依赖,如下:

 

compile 'com.android.support:recyclerview-v7:25.1.1'
            然后在布局文件里加入RecyclerView的布局视图,

<android.support.v7.widget.RecyclerView    android:id="@+id/id_demo_recycleView"    android:layout_width="match_parent"    android:layout_height="match_parent"></android.support.v7.widget.RecyclerView>
           使用过ListView的朋友都知道,ListView是使用适配器模式的,而我们的RecyclerView也是一样的,那么,我们开始写我们的适配器吧。

public class MyAdapter extends RecyclerView.Adapter<MyAdapter.MyViewHolder> {    private LayoutInflater inflater;    private ArrayList<String> mDatas;    public MyAdapter(ArrayList<String> mDatas){        this.mDatas = mDatas;    }    @Override    public MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {        inflater = LayoutInflater.from(parent.getContext());        View view = inflater.inflate(R.layout.item,parent,false);        return new MyViewHolder(view);    }    @Override    public int getItemCount() {        return mDatas.size();    }    @Override    public void onBindViewHolder(MyViewHolder holder, int position) {        holder.textView.setText(mDatas.get(position));    }    class MyViewHolder extends RecyclerView.ViewHolder{        private TextView textView;        public MyViewHolder(View itemView) {            super(itemView);            textView = (TextView) itemView.findViewById(R.id.id_demo_text);        }    }}
这个时候适配器已经小幅度的完工了,只需要在我们的Activity里,使用就ok了。activity的代码如下。

private ArrayList<String> mDatas;@Overrideprotected void onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentView(R.layout.activity_main);    initDatas();    recycleView = (RecyclerView) findViewById(R.id.id_demo_recycleView);    adapter = new MyAdapter(mDatas);    recycleView.setAdapter(adapter);    recycleView.setLayoutManager(new LinearLayoutManager(this));}
运行起来就能看到我们的RecyclerView啦。

           不过到这里还是没明白如此复杂,我们那么多人喜欢RecyclerView呢,让我们下节揭开谜题 吧。

0 0