From the tutorial you provided :)
The two additional methods android Adapters provide for managing different row types are:
getItemViewType(int position)
and getViewTypeCount()
.
The list view uses these methods create different pools of views to reuse for different types of rows.
Good Luck :)