ListView
in Android supports header and footer views - views that do not belong to the underlying adapter but otherwise show up in the list and scroll along with the contents. However, they only work if you have not yet set your own adapter and are therefore not terribly flexible.
The SackOfViewsAdapter
is another way of approaching this. Here, you provide the Views
that make up the rows, and the adapter feeds them to Android as if they were newly created.
The SackOfViewsAdapter
is designed to be sub-classed, mostly to determine how isEnabled() behaves, so you can control which of those views are selectable and which simply scroll with the list.