RecyclerView方便自己使用

来源:互联网 发布:高中视频教学软件 编辑:程序博客网 时间:2024/05/17 00:53


添加依赖

compile 'com.android.support:recyclerview-v7:26.0.0-alpha1'


//RecyclerView的适配器

public class MyAdapter extends RecyclerView.Adapter<MyAdapter.ViewHolder> {    //声明变量    private Context context;    private List<?> list = new ArrayList<>();    //构造方法    public MyAdapter(Context context, List<?> list) {        this.context = context;        this.list = list;    }    @Override    public MyAdapter.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {        //加载布局        View view = LayoutInflater.from(context).inflate("要加载的布局",parent,false);        ViewHolder holder = new ViewHolder(view);        return holder;    }    @Override    public void onBindViewHolder(MyAdapter.ViewHolder holder, int position) {            //给控件赋值的操作           }    @Override    public int getItemCount() {        return list== null?0:list.size();//返回条目数    }    public class ViewHolder extends RecyclerView.ViewHolder{        //布局中的控件        public ImageView imageView;        public ViewHolder(View itemView) {            super(itemView);            //初始化控件控件            imageView = (ImageView)itemView.findViewById(R.id.img);        }    }}//MainActivity的代码
public class MainActivity extends AppCompatActivity {    private RecyclerView recyclerView;    private List<?> list = new ArrayList<>();    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        //初始化控件        recyclerView = (RecyclerView) findViewById(R.id.my_recycler);        //设置瀑布流的展示        StaggeredGridLayoutManager manager = new StaggeredGridLayoutManager(2, StaggeredGridLayoutManager.VERTICAL);        //默认布局
        //LinearLayoutManager manager = new LinearLayoutManager(MainActivity.this);        //GridView样式
        //GridLayoutManager grid = new GridLayoutManager(MainActivity.this,2);
recyclerView.setLayoutManager(manager); //设置适配器
        recyclerView.setAdapter(new MyAdapter(MainActivity.this,this));
}}


原创粉丝点击