先导入要使用的包
然后分三步来构建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";
}