Chapter 16. Diffutil and Data Binding: Life in the Fast Lane
Your app needs to run as smoothly and efficiently as possible.
But if you’re not careful, large or complex data sets can cause your recycler view to glitch. In this chapter, we’ll introduce you to DiffUtil: a utility class that adds extra smarts to your recycler view. You’ll find out how to use it to make efficient updates to your recycler view. You’ll discover how ListAdapters make using DiffUtil a breeze. And along the way, you’ll learn how to get rid of findViewById() for good by implementing data binding in your recycler view code.
The recycler view displays task data correctly…
In the previous chapter, we added a recycler view to the Tasks app that displays its data exactly how we want it to. Each task is shown in a separate card, and each card displays the task name and whether it has been completed. The cards are then laid out in a two-column grid like this:
…but when the data’s updated, the recycler view jumps
Each time we add a new task, the recycler view gets redrawn so that it includes the new record and stays up-to-date. When it does this, however, the recycler view jumps and it’s not very smooth.
Each time the recycler view needs to be updated, its entire list gets redrawn. There are no smooth transitions ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access