Beginning RecyclerView

Learn how to create lists in Android using the RecyclerView. Dive into RecyclerView components such as adapters and view holders, and leverage them to produce rich user interfaces as well as provide behavior that your users will expect. By Brian Moakley.

3.9 (7) · 1 Review

Download materials
Save for later
Comments
Share

Learning path

This is part of the Android User Interfaces learning path. View path.

Who is this for?

New Android developers who are looking to improve their Android development skills. This course is also suited for advanced developers looking to learn more about the RecyclerView and what can be achieved while using it.

Covered concepts

  • RecyclerViews
  • Adapters
  • View Holders
  • Different Layouts
  • Decoration Drawing
  • Item Animations
  • Section Headers
  • Multiple View Types
  • Rearranging Rows
  • Swipe to Delete
  • Multiple Selection

Part 1: RecyclerView Basics

01
Toggle description

Learn about the RecyclerView, from basic setup to animations and common interactions.

Toggle description

Download the starter app and build it in Android Studio, then take a peek at the included starter layout files.

Toggle description

Get started creating a RecyclerView by importing the dependency and then incorporating it into your layout.

Toggle description

Connect your data source with an adapter, display content with a ViewHolder and organize the content with a LayoutManager.

Toggle description

Learn how to connect the model data displayed in the RecyclerView to the corresponding objects in the view layer.

Toggle description

Challenge time! Practice what you've learned so far by adding more data into the rows of the RecyclerView.

Toggle description

See how to respond to clicks on the rows of the RecyclerView and take the user to a detail screen for the corresponding row item.

Toggle description

Take all the basics of the RecyclerView you've learned so far and build a Favorites screen for the sample app.

Conclusion 1:03
Toggle description

Review what you've learned about RecyclerView basics, and find out what's up next.

Part 2: Use Different Layouts

Toggle description

Take a quick look at the layout managers this part covers, along with the capabilities of each.

Toggle description

Learn more detail about the LinearLayoutManager by creating a horizontal RecyclerView on the detail screen.

Toggle description

Create a nested RecyclerView, learn about the LinearSnapHelper, and improve performance with a RecycledViewPool.

Toggle description

See how to create a grid of items with a RecyclerView using a GridLayoutManager.

Toggle description

See how to use varying span sizes within a RecyclerView managed by GridLayoutManager using a span size lookup.

Toggle description

Practice setting custom span sizes on a RecyclerView managed by a GridLayoutManager, then see a solution.

Toggle description

Learn how to handle the case of grid items having different natural sizes using a StaggeredGridLayoutManager.

Toggle description

Add a menu to allow switching between span sizes for a RecyclerView managed by a StaggeredGridLayoutManager.

Toggle description

Practice what you've learned about layout managers by creating a grid of items on the detail screen.

Conclusion 1:07
Toggle description

Review what you learned about the various RecyclerView layout managers, and find out what's next.

Part 3: Decorate and Animate RecyclerViews

Toggle description

In this part, you'll learn the capabilities of ItemDecoration and how to animate items in a RecyclerView.

Toggle description

Use ItemDecoration with a RecyclerView to control the spacing around the items utilizing offsets.

Toggle description

See how to use ItemDecoration with a RecyclerView to create separators between the elements in a list.

Toggle description

Practice using ItemDecoration with a RecyclerView to create separators between the items in a grid.

Toggle description

Discover how to use animations to add dynamic effects to the presentation of the items in a RecyclerView.

Toggle description

Practice using animations to add dynamic effects to the presentation of the items in a RecyclerView.

Conclusion 0:40
Toggle description

Review what you learned about using ItemDecoration and animations with a RecyclerView, and discover what's next.

Part 4: Section Headers and View Types

Toggle description

In this part, you'll learn about using different view types in a RecyclerView.

Toggle description

Sort the items displayed in a RecyclerView into groups, then add section headers to the groups.

Toggle description

Use view types to customize the display of items displayed in a RecyclerView, based on the type of the item.

Toggle description

Practice using view types to customize the display of certain items in a RecyclerView, then see a solution.

Conclusion 0:36
Toggle description

Review what you learned about using view types for items displayed in a RecyclerView, and discuss what's next.

Part 5: Common Interactions

Toggle description

Learn about the common interactions with a RecyclerView, such as drag and drop and swipe-to-delete.

Toggle description

Discover the capabilities and use cases for combining the ItemTouchHelper class with a RecyclerView.

Toggle description

See how to use ItemTouchHelper to create a basic capability to rearrange the items in a RecyclerView.

Toggle description

Set up drag handles and item selection highlighting using ItemTouchHelper with a RecyclerView.

Toggle description

Use ItemTouchHelper to create a basic capability to rearrange the items in a RecyclerView.

Toggle description

See how to use ItemTouchHelper to add a basic swipe-to-delete capability for the items in a RecyclerView.

Toggle description

Learn how to implement multi-select by using the RecyclerView selection library.

Conclusion 2:43
Toggle description

Congrats on finishing the course! Learn what RecyclerView topics weren't covered, and where to go from here.

Up next

Android & Kotlin
Beginning ViewPagers
Learn how to use one of the most common Android Widgets, the ViewPager. ViewPagers are fundamental because they allow you to display different kinds of views using a pattern which is familiar to most users.

Instructors

Contributors

Brian Moakley

Instructor

Christine Sweigart

Editor

Adriana Kutenko

Illustrator

Over 300 content creators. Join our team.