@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 查找控件
recyclerView = (RecyclerView) findViewById(R.id.rview);
// 初始化list集合
for (int i = 0; i < 100; i++) {
list.add("数据 " + i);
}
MyAdapter adapter = new MyAdapter(MainActivity.this, list);
//将适配器放到recyclerView上
//创建线性布局管理者对象
LinearLayoutManager manager = new LinearLayoutManager(MainActivity.this);
//StaggeredGridLayoutManager manager = new StaggeredGridLayoutManager(2,
// RecyclerView.VERTICAL);
//通过manager对象设置显示方向
manager.setOrientation(RecyclerView.VERTICAL);
//将管理者对象给recyclerView
recyclerView.setLayoutManager(manager);
recyclerView.setAdapter(adapter);
recyclerView.addItemDecoration(new MyDecor(MainActivity.this, RecyclerView.VERTICAL));
}
}
class MyAdapter extends RecyclerView.Adapter {
// 声明两个属性,接收传递过来的数据
private Context context;
private ArrayList list;
private MyViewHolder viewHolder;
// 创建一个构造方法,将数据和activity的上下文传递过来
public MyAdapter(Context context, ArrayList list) {
this.context = context;
this.list = list;
}
// 返回显示的条目个数
@Override
public int getItemCount() {
// TODO Auto-generated method stub
return list.size();
}
@Override
public void onBindViewHolder(ViewHolder arg0, int arg1) {
// 将父类的对象强转为子类对象
// MyViewHolder myViewHolder = (MyViewHolder) arg0;
if (arg0 instanceof MyViewHolder) {
viewHolder &