Android APIs
public class

HeaderViewListAdapter

extends Object
implements WrapperListAdapter Filterable
java.lang.Object
   ↳ android.widget.HeaderViewListAdapter

Class Overview

ListAdapter used when a ListView has header views. This ListAdapter wraps another one and also keeps track of the header views and their associated data objects.

This is intended as a base class; you will probably not need to use this class directly in your own code.

Summary

[Expand]
Inherited Constants
From interface android.widget.Adapter
Public Constructors
HeaderViewListAdapter(ArrayList<ListView.FixedViewInfo> headerViewInfos, ArrayList<ListView.FixedViewInfo> footerViewInfos, ListAdapter adapter)
Public Methods
boolean areAllItemsEnabled()
Indicates whether all the items in this adapter are enabled.
int getCount()
How many items are in the data set represented by this Adapter.
Filter getFilter()

Returns a filter that can be used to constrain data with a filtering pattern.

int getFootersCount()
int getHeadersCount()
Object getItem(int position)
Get the data item associated with the specified position in the data set.
long getItemId(int position)
Get the row id associated with the specified position in the list.
int getItemViewType(int position)
Get the type of View that will be created by getView(int, View, ViewGroup) for the specified item.
View getView(int position, View convertView, ViewGroup parent)
Get a View that displays the data at the specified position in the data set.
int getViewTypeCount()

Returns the number of types of Views that will be created by getView(int, View, ViewGroup).

ListAdapter getWrappedAdapter()
Returns the adapter wrapped by this list adapter.
boolean hasStableIds()
Indicates whether the item ids are stable across changes to the underlying data.
boolean isEmpty()
boolean isEnabled(int position)
Returns true if the item at the specified position is not a separator.
void registerDataSetObserver(DataSetObserver observer)
Register an observer that is called when changes happen to the data used by this adapter.
boolean removeFooter(View v)
boolean removeHeader(View v)
void unregisterDataSetObserver(DataSetObserver observer)
Unregister an observer that has previously been registered with this adapter via registerDataSetObserver(DataSetObserver).
[Expand]
Inherited Methods
From class java.lang.Object
From interface android.widget.WrapperListAdapter
From interface android.widget.Filterable
From interface android.widget.ListAdapter
From interface android.widget.Adapter

Public Constructors

public HeaderViewListAdapter (ArrayList<ListView.FixedViewInfo> headerViewInfos, ArrayList<ListView.FixedViewInfo> footerViewInfos, ListAdapter adapter)

Added in API level 1

Parameters
headerViewInfos ArrayList
footerViewInfos ArrayList
adapter ListAdapter

Public Methods

public boolean areAllItemsEnabled ()

Added in API level 1

Indicates whether all the items in this adapter are enabled. If the value returned by this method changes over time, there is no guarantee it will take effect. If true, it means all items are selectable and clickable (there is no separator.)

Returns
boolean True if all items are enabled, false otherwise.

public int getCount ()

Added in API level 1

How many items are in the data set represented by this Adapter.

Returns
int Count of items.

public Filter getFilter ()

Added in API level 1

Returns a filter that can be used to constrain data with a filtering pattern.

This method is usually implemented by Adapter classes.

Returns
Filter a filter used to constrain data

public int getFootersCount ()

Added in API level 1

Returns
int

public int getHeadersCount ()

Added in API level 1

Returns
int

public Object getItem (int position)

Added in API level 1

Get the data item associated with the specified position in the data set.

Parameters
position int: Position of the item whose data we want within the adapter's data set.
Returns
Object The data at the specified position.

public long getItemId (int position)

Added in API level 1

Get the row id associated with the specified position in the list.

Parameters
position int: The position of the item within the adapter's data set whose row id we want.
Returns
long The id of the item at the specified position.

public int getItemViewType (int position)

Added in API level 1

Get the type of View that will be created by getView(int, View, ViewGroup) for the specified item.

Parameters
position int: The position of the item within the adapter's data set whose view type we want.
Returns
int An integer representing the type of View. Two views should share the same type if one can be converted to the other in getView(int, View, ViewGroup). Note: Integers must be in the range 0 to getViewTypeCount() - 1. IGNORE_ITEM_VIEW_TYPE can also be returned.

public View getView (int position, View convertView, ViewGroup parent)

Added in API level 1

Get a View that displays the data at the specified position in the data set. You can either create a View manually or inflate it from an XML layout file. When the View is inflated, the parent View (GridView, ListView...) will apply default layout parameters unless you use inflate(int, android.view.ViewGroup, boolean) to specify a root view and to prevent attachment to the root.

Parameters
position int: The position of the item within the adapter's data set of the item whose view we want.
convertView View: The old view to reuse, if possible. Note: You should check that this view is non-null and of an appropriate type before using. If it is not possible to convert this view to display the correct data, this method can create a new view. Heterogeneous lists can specify their number of view types, so that this View is always of the right type (see getViewTypeCount() and getItemViewType(int)).
parent ViewGroup: The parent that this view will eventually be attached to
Returns
View A View corresponding to the data at the specified position.

public int getViewTypeCount ()

Added in API level 1

Returns the number of types of Views that will be created by getView(int, View, ViewGroup). Each type represents a set of views that can be converted in getView(int, View, ViewGroup). If the adapter always returns the same type of View for all items, this method should return 1.

This method will only be called when when the adapter is set on the the AdapterView.

Returns
int The number of types of Views that will be created by this adapter

public ListAdapter getWrappedAdapter ()

Added in API level 1

Returns the adapter wrapped by this list adapter.

Returns
ListAdapter The ListAdapter wrapped by this adapter.

public boolean hasStableIds ()

Added in API level 1

Indicates whether the item ids are stable across changes to the underlying data.

Returns
boolean True if the same id always refers to the same object.

public boolean isEmpty ()

Added in API level 1

Returns
boolean

public boolean isEnabled (int position)

Added in API level 1

Returns true if the item at the specified position is not a separator. (A separator is a non-selectable, non-clickable item). The result is unspecified if position is invalid. An ArrayIndexOutOfBoundsException should be thrown in that case for fast failure.

Parameters
position int: Index of the item
Returns
boolean True if the item is not a separator

public void registerDataSetObserver (DataSetObserver observer)

Added in API level 1

Register an observer that is called when changes happen to the data used by this adapter.

Parameters
observer DataSetObserver: the object that gets notified when the data set changes.

public boolean removeFooter (View v)

Added in API level 1

Parameters
v View
Returns
boolean

public boolean removeHeader (View v)

Added in API level 1

Parameters
v View
Returns
boolean

public void unregisterDataSetObserver (DataSetObserver observer)

Added in API level 1

Unregister an observer that has previously been registered with this adapter via registerDataSetObserver(DataSetObserver).

Parameters
observer DataSetObserver: the object to unregister.