Волшебство происходит в Adapter
, что подающий вид на ListView
.
Когда прокручивается ListView
, он должен отображать любую строку, следующую в наборе данных. Вместо того, чтобы делать это самостоятельно, ListView
s подкреплены Adapter
. ListView
по существу запрашивает адаптер для следующего вида (именования значения индекса) каждый раз, когда ему нужно прокручивать вверх или вниз.
Adapter
может передавать ListView
все, что захочет. Когда ListView
запрашивает строку x (значение индекса), Adapter
может посмотреть на набор данных и увидеть, что строка x должна быть специальным заголовком. Адаптер создает или перерабатывает специальный заголовок и передает его в список.
См., Например, код List View Guide.