public interface Adapter
AdapterView
and the
underlying data for that view. The Adapter provides access to the data items.
The Adapter is also responsible for making a View
for
each item in the data set.ArrayAdapter
,
CursorAdapter
,
SimpleCursorAdapter
Modifier and Type | Field and Description |
---|---|
static int |
IGNORE_ITEM_VIEW_TYPE
An item view type that causes the
AdapterView to ignore the item
view. |
static int |
NO_SELECTION |
Modifier and Type | Method and Description |
---|---|
int |
getCount()
How many items are in the data set represented by this Adapter.
|
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, android.view.View, android.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, android.view.View, android.view.ViewGroup) . |
boolean |
hasStableIds()
Indicates whether the item ids are stable across changes to the
underlying data.
|
boolean |
isEmpty() |
void |
registerDataSetObserver(DataSetObserver observer)
Register an observer that is called when changes happen to the data used by this adapter.
|
void |
unregisterDataSetObserver(DataSetObserver observer)
Unregister an observer that has previously been registered with this
adapter via
registerDataSetObserver(android.database.DataSetObserver) . |
static final int IGNORE_ITEM_VIEW_TYPE
AdapterView
to ignore the item
view. For example, this can be used if the client does not want a
particular view to be given for conversion in
getView(int, View, ViewGroup)
.static final int NO_SELECTION
void registerDataSetObserver(DataSetObserver observer)
observer
- the object that gets notified when the data set changes.void unregisterDataSetObserver(DataSetObserver observer)
registerDataSetObserver(android.database.DataSetObserver)
.observer
- the object to unregister.int getCount()
Object getItem(int position)
position
- Position of the item whose data we want within the adapter's
data set.long getItemId(int position)
position
- The position of the item within the adapter's data set whose row id we want.boolean hasStableIds()
View getView(int position, View convertView, ViewGroup parent)
LayoutInflater.inflate(int, android.view.ViewGroup, boolean)
to specify a root view and to prevent attachment to the root.position
- The position of the item within the adapter's data set of the item whose view
we want.convertView
- 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
- The parent that this view will eventually be attached toint getItemViewType(int position)
getView(int, android.view.View, android.view.ViewGroup)
for the specified item.position
- The position of the item within the adapter's data set whose view type we
want.getView(int, android.view.View, android.view.ViewGroup)
. Note: Integers must be in the
range 0 to getViewTypeCount()
- 1. IGNORE_ITEM_VIEW_TYPE
can
also be returned.IGNORE_ITEM_VIEW_TYPE
int getViewTypeCount()
Returns the number of types of Views that will be created by
getView(int, android.view.View, android.view.ViewGroup)
. Each type represents a set of views that can be
converted in getView(int, android.view.View, android.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
.
boolean isEmpty()