recycleView学习01

先导入要使用的包
然后分三步来构建recycleview

新建一个activity

package com.example.jay_tang.learnrv;

import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;

public class MainActivity extends AppCompatActivity {
 private RecyclerView rv;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        rv = new RecyclerView(this);
        setContentView(rv);
        rv.setLayoutManager(new LinearLayoutManager(this));
        rv.setAdapter(new MyAdapter());

    }
}

定义Adapter

自己重写 adapter 继承RecycleView的adapter

class MyAdapter extends RecyclerView.Adapter {


    @Override


 public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
        //对其赋值
        return new MyViewHolder(LayoutInflater.from(parent.getContext()).inflate(R.layout.list_cell, null));

    }
//绑定viewHoldler
    @Override
    public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) {
        MyViewHolder mvh = (MyViewHolder) holder;
        CellData cd = data[position];
        mvh.getText1().setText(cd.title);
        mvh.getText2().setText(cd.context);
    }

    @Override
    public int getItemCount() {
        return data.length;
    }


    class MyViewHolder extends RecyclerView.ViewHolder {
        private View root;
        private TextView text1;
        private TextView text2;

        public TextView getText1() {
            return text1;
        }

        public TextView getText2() {
            return text2;
        }

        public MyViewHolder(View root) {
            super(root);
            text1 = (TextView) root.findViewById(R.id.textView);
            text2 = (TextView) root.findViewById(R.id.textView2);

        }
    }

    private CellData[] data = {
            new CellData("luowang", "1"),
            new CellData("luowang", "2"),
            new CellData("xiaorui", "3")
    };
}

加载的数据类的代码

public class CellData {
    public CellData(String title,String context) {
        this.title = title;
        this.context = context;

    }

    public String title="title";
    public String context="context";

}
posted @ 2016-04-10 12:03  Tesi1a  阅读(96)  评论(0编辑  收藏  举报