Adapter
public
interface
Adapter
android.widget.Adapter |
An Adapter object acts as a bridge between an 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.
Summary
Constants | |
---|---|
int |
IGNORE_ITEM_VIEW_TYPE
An item view type that causes the |
int |
NO_SELECTION
|
Public methods | |
---|---|
default
CharSequence[]
|
getAutofillOptions()
Gets a string representation of the adapter data that can help
|
abstract
int
|
getCount()
How many items are in the data set represented by this Adapter. |
abstract
Object
|
getItem(int position)
Get the data item associated with the specified position in the data set. |
abstract
long
|
getItemId(int position)
Get the row id associated with the specified position in the list. |
abstract
int
|
getItemViewType(int position)
Get the type of View that will be created by |
abstract
View
|
getView(int position, View convertView, ViewGroup parent)
Get a View that displays the data at the specified position in the data set. |
abstract
int
|
getViewTypeCount()
Returns the number of types of Views that will be created by
|
abstract
boolean
|
hasStableIds()
Indicates whether the item ids are stable across changes to the underlying data. |
abstract
boolean
|
isEmpty()
|
abstract
void
|
registerDataSetObserver(DataSetObserver observer)
Register an observer that is called when changes happen to the data used by this adapter. |
abstract
void
|
unregisterDataSetObserver(DataSetObserver observer)
Unregister an observer that has previously been registered with this
adapter via |
Constants
IGNORE_ITEM_VIEW_TYPE
public static final int IGNORE_ITEM_VIEW_TYPE
An item view type that causes the 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, android.view.View, android.view.ViewGroup)
.
See also:
Constant Value: -1 (0xffffffff)
NO_SELECTION
public static final int NO_SELECTION
Constant Value: -2147483648 (0x80000000)
Public methods
getAutofillOptions
public CharSequence[] getAutofillOptions ()
Gets a string representation of the adapter data that can help
AutofillService
autofill the view backed by the adapter.
It should only be set (i.e., non-null
if the values do not represent PII
(Personally Identifiable Information - sensitive data such as email addresses,
credit card numbers, passwords, etc...). For
example, it's ok to return a list of month names, but not a list of usernames. A good rule of
thumb is that if the adapter data comes from static resources, such data is not PII - see
ViewStructure.setDataIsSensitive(boolean)
for more info.
Returns | |
---|---|
CharSequence[] |
null by default, unless implementations override it. |
getCount
public abstract int getCount ()
How many items are in the data set represented by this Adapter.
Returns | |
---|---|
int |
Count of items. |
getItem
public abstract Object getItem (int position)
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. |
getItemId
public abstract long getItemId (int position)
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. |
getItemViewType
public abstract int getItemViewType (int position)
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. |
See also:
getView
public abstract View getView (int position, View convertView, ViewGroup parent)
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
LayoutInflater.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. |
getViewTypeCount
public abstract int getViewTypeCount ()
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 the adapter is set on the AdapterView
.
Returns | |
---|---|
int |
The number of types of Views that will be created by this adapter |
hasStableIds
public abstract boolean hasStableIds ()
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. |
isEmpty
public abstract boolean isEmpty ()
Returns | |
---|---|
boolean |
true if this adapter doesn't contain any data. This is used to determine whether the empty view should be displayed. A typical implementation will return getCount() == 0 but since getCount() includes the headers and footers, specialized adapters might want a different behavior. |
registerDataSetObserver
public abstract void registerDataSetObserver (DataSetObserver observer)
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. |
unregisterDataSetObserver
public abstract void unregisterDataSetObserver (DataSetObserver observer)
Unregister an observer that has previously been registered with this
adapter via registerDataSetObserver(DataSetObserver)
.
Parameters | |
---|---|
observer |
DataSetObserver : the object to unregister. |