Creating layouts for ViewHolders
A RecyclerView
does just what its name suggests--it recycles or reuses its children to present different data to the user. This means that while it appears to have a long list of child-widgets (such as cards or images), it actually has the ones that the user can actually see. When a widget is scrolled off the screen, the RecyclerView
changes its data, and then scrolls it back into view. The RecyclerView
doesn't directly bind the data to the child views; however, it instead goes through a ViewHolder
. The job of the ViewHolder
is to help speed up the data binding process. Think of the travel claim app again; if we want to display each claim item in a RecyclerView
, each one will look something like the following:
Each of the preceding items will require a different Android widget, and every time you want to populate them, they need to be looked up and bound to their new data. A ViewHolder
implementation is a convenient place to look up, hold, and bind data for...