Adding a RecyclerView
Add the dependency as described in the Remark section, then add a
RecyclerView to your layout:
<android.support.v7.widget.RecyclerView android:id="@+id/my_recycler_view" android:layout_width="match_parent" android:layout_height="wrap_content"/>
Once you have added a
RecyclerView widget to your layout, obtain a handle to the object, connect it to a layout manager and attach an adapter for the data to be displayed:
mRecyclerView = (RecyclerView) findViewById(R.id.my_recycler_view); // set a layout manager (LinearLayoutManager in this example) mLayoutManager = new LinearLayoutManager(getApplicationContext()); mRecyclerView.setLayoutManager(mLayoutManager); // specify an adapter mAdapter = new MyAdapter(myDataset); mRecyclerView.setAdapter(mAdapter);
Or simply setup layout manager from xml by adding this lines:
If you know that changes in content of the
RecyclerView won’t change the layout size of the
RecyclerView, use the following code to improve the performance of the component. If RecyclerView has a fixed size, it knows that RecyclerView itself will not resize due to its children, so it doesn’t call request layout at all. It just handles the change itself. If invalidating whatever the parent is, the coordinator, layout, or whatever. (you can use this method even before setting
RecyclerView provides these built-in layout managers to use. So you can create a list, a grid and a staggered grid using
- LinearLayoutManager shows items in a vertical or horizontal scrolling list.
- GridLayoutManager shows items in a grid.
- StaggeredGridLayoutManager shows items in a staggered grid.