package com.example.recyclerview;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.support.v7.widget.GridLayoutManager;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.support.v7.widget.StaggeredGridLayoutManager;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import java.util.ArrayList;
import java.util.List;
public class MainActivity extends AppCompatActivity {
private List<String> list;
private RecyclerView rv;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
rv = (RecyclerView) findViewById(R.id.rv);
initRV();
}
//recylerview方法
private void initRV() {
//list集合
initList();
//得到适配器
MyRecylerview recylerview = new MyRecylerview();
//绑定
rv.setAdapter(recylerview);
//创建list布局管理器
//LinearLayoutManager manager = new LinearLayoutManager(this);
//创建九宫格布局管理器
//GridLayoutManager manager = new GridLayoutManager(this,3);
//创建瀑布了布局
StaggeredGridLayoutManager manager = new StaggeredGridLayoutManager(3,StaggeredGridLayoutManager.VERTICAL);
//Recylerview绑定布局管理器
rv.setLayoutManager(manager);
}
//list集合
private void initList() {
list = new ArrayList<>();
for (int i = 0; i <100 ; i++) {
list.add("你说呢"+i);
}
}
//适配器
class MyRecylerview extends RecyclerView.Adapter<MyRecylerview.MyViewHolder>{
@Override
public MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
//引入布局
View view = View.inflate(MainActivity.this,R.layout.re1,null);
MyViewHolder holder = new MyViewHolder(view);
return holder;
}
@Override
public void onBindViewHolder(MyViewHolder holder, int position) {
//打印数据
holder.tv1.setText(list.get(position));
}
@Override
public int getItemCount() {
return list ==null ? 0 : list.size();
}
//Viewhodler
class MyViewHolder extends RecyclerView.ViewHolder{
TextView tv1;
public MyViewHolder(View itemView) {
super(itemView);
tv1 = (TextView) itemView.findViewById(R.id.tv1);
}
}
}
}