# Print output for @column tags ?>
Developers

- Design
- Develop
- Distribute

Developer Console

## Most visited

## Recently visited

## Results for

Summary: Inherited Constants | Ctors | Methods | Inherited Methods

# ArrayAdapter

`public class ArrayAdapter`
`` `extends BaseAdapter` `implements Filterable, ThemedSpinnerAdapter`

java.lang.Object
↳ | android.widget.BaseAdapter
| ↳ | android.widget.ArrayAdapter<T>

You can use this adapter to provide views for an `AdapterView`, Returns a view for each object in a collection of data objects you provide, and can be used with list-based user interface widgets such as `ListView` or `Spinner`.

By default, the array adapter creates a view by calling `Object#toString()` on each data object in the collection you provide, and places the result in a TextView. You may also customize what type of view is used for the data object in the collection. To customize what type of view is used for the data object, override `getView(int, android.view.View, android.view.ViewGroup)` and inflate a view resource.

For an example of using an array adapter with a ListView, see the Adapter Views guide.

For an example of using an array adapter with a Spinner, see the Spinners guide.

Note: If you are considering using array adapter with a ListView, consider using `RecyclerView` instead. RecyclerView offers similar features with better performance and more flexibility than ListView provides. See the Recycler View guide.

## Summary

### Inherited constants
From interface `android.widget.Adapter`
`int` | `IGNORE_ITEM_VIEW_TYPE` An item view type that causes the `AdapterView` to ignore the item view.
`int` | `NO_SELECTION`

### Public constructors
`ArrayAdapter(Context context, int resource)` Constructor
`ArrayAdapter(Context context, int resource, int textViewResourceId)` Constructor
`ArrayAdapter(Context context, int resource, T[] objects)` Constructor.
`ArrayAdapter(Context context, int resource, int textViewResourceId, T[] objects)` Constructor.
`ArrayAdapter(Context context, int resource, List<T> objects)` Constructor
`ArrayAdapter(Context context, int resource, int textViewResourceId, List<T> objects)` Constructor

### Public methods
`void` | `add(T object)` Adds the specified object at the end of the array.
`void` | `addAll(T... items)` Adds the specified items at the end of the array.
`void` | `addAll(Collection<? extends T> collection)` Adds the specified Collection at the end of the array.
`void` | `clear()` Remove all elements from the list.
`static ArrayAdapter<CharSequence>` | `createFromResource(Context context, int textArrayResId, int textViewResId)` Creates a new ArrayAdapter from external resources.
`CharSequence[]` | `getAutofillOptions()` Gets a string representation of the adapter data that can help `AutofillService` autofill the view backed by the adapter.
`Context` | `getContext()` Returns the context associated with this array adapter.
`int` | `getCount()` How many items are in the data set represented by this Adapter.
`View` | `getDropDownView(int position, View convertView, ViewGroup parent)` Gets a `View` that displays in the drop down popup the data at the specified position in the data set.
`Resources.Theme` | `getDropDownViewTheme()` Returns the value previously set by a call to `setDropDownViewTheme(android.content.res.Resources.Theme)`.
`Filter` | `getFilter()` Returns a filter that can be used to constrain data with a filtering pattern.
`T` | `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` | `getPosition(T item)` Returns the position of the specified item in the array.
`View` | `getView(int position, View convertView, ViewGroup parent)` Get a View that displays the data at the specified position in the data set.
`void` | `insert(T object, int index)` Inserts the specified object at the specified index in the array.
`void` | `notifyDataSetChanged()` Notifies the attached observers that the underlying data has been changed and any View reflecting the data set should refresh itself.
`void` | `remove(T object)` Removes the specified object from the array.
`void` | `setDropDownViewResource(int resource)` Sets the layout resource to create the drop down views.
`void` | `setDropDownViewTheme(Resources.Theme theme)` Sets the `Resources.Theme` against which drop-down views are inflated.
`void` | `setNotifyOnChange(boolean notifyOnChange)` Control whether methods that change the list (`add(T)`, `addAll(java.util.Collection)`, `addAll(java.lang.Object[])`, `insert(T, int)`, `remove(T)`, `clear()`, `sort(java.util.Comparator)`) automatically call `notifyDataSetChanged()`.
`void` | `sort(Comparator<? super T> comparator)` Sorts the content of this adapter using the specified comparator.

### Inherited methods
From class `android.widget.BaseAdapter`
`boolean` | `areAllItemsEnabled()` Indicates whether all the items in this adapter are enabled.
`CharSequence[]` | `getAutofillOptions()` Gets a string representation of the adapter data that can help `AutofillService` autofill the view backed by the adapter.
`View` | `getDropDownView(int position, View convertView, ViewGroup parent)` Gets a `View` that displays in the drop down popup the data at the specified position in the data set.
`int` | `getItemViewType(int position)` Get the type of View that will be created by `getView(int, View, ViewGroup)` for the specified item.
`int` | `getViewTypeCount()` Returns the number of types of Views that will be created by `getView(int, View, ViewGroup)`.
`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` | `notifyDataSetChanged()` Notifies the attached observers that the underlying data has been changed and any View reflecting the data set should refresh itself.
`void` | `notifyDataSetInvalidated()` Notifies the attached observers that the underlying data is no longer valid or available.
`void` | `registerDataSetObserver(DataSetObserver observer)` Register an observer that is called when changes happen to the data used by this adapter.
`void` | `setAutofillOptions(CharSequence... options)` Sets the value returned by `getAutofillOptions()`
`void` | `unregisterDataSetObserver(DataSetObserver observer)` Unregister an observer that has previously been registered with this adapter via `registerDataSetObserver(DataSetObserver)`.
From class `java.lang.Object`
`Object` | `clone()` Creates and returns a copy of this object.
`boolean` | `equals(Object obj)` Indicates whether some other object is "equal to" this one.
`void` | `finalize()` Called by the garbage collector on an object when garbage collection determines that there are no more references to the object.
`final Class<?>` | `getClass()` Returns the runtime class of this `Object`.
`int` | `hashCode()` Returns a hash code value for the object.
`final void` | `notify()` Wakes up a single thread that is waiting on this object's monitor.
`final void` | `notifyAll()` Wakes up all threads that are waiting on this object's monitor.
`String` | `toString()` Returns a string representation of the object.
`final void` | `wait(long timeout, int nanos)` Causes the current thread to wait until another thread invokes the `notify()` method or the `notifyAll()` method for this object, or some other thread interrupts the current thread, or a certain amount of real time has elapsed.
`final void` | `wait(long timeout)` Causes the current thread to wait until either another thread invokes the `notify()` method or the `notifyAll()` method for this object, or a specified amount of time has elapsed.
`final void` | `wait()` Causes the current thread to wait until another thread invokes the `notify()` method or the `notifyAll()` method for this object.
From interface `android.widget.ListAdapter`
`abstract boolean` | `areAllItemsEnabled()` Indicates whether all the items in this adapter are enabled.
`abstract boolean` | `isEnabled(int position)` Returns true if the item at the specified position is not a separator.
From interface `android.widget.SpinnerAdapter`
`abstract View` | `getDropDownView(int position, View convertView, ViewGroup parent)` Gets a `View` that displays in the drop down popup the data at the specified position in the data set.
From interface `android.widget.Filterable`
`abstract Filter` | `getFilter()` Returns a filter that can be used to constrain data with a filtering pattern.
From interface `android.widget.ThemedSpinnerAdapter`
`abstract Resources.Theme` | `getDropDownViewTheme()` Returns the value previously set by a call to `setDropDownViewTheme(android.content.res.Resources.Theme)`.
`abstract void` | `setDropDownViewTheme(Resources.Theme theme)` Sets the `Resources.Theme` against which drop-down views are inflated.
From interface `android.widget.Adapter`
`default CharSequence[]` | `getAutofillOptions()` Gets a string representation of the adapter data that can help `AutofillService` autofill the view backed by the adapter.
`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 `getView(int, View, ViewGroup)` for the specified item.
`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 `getView(int, View, ViewGroup)`.
`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 `registerDataSetObserver(DataSetObserver)`.

## Public constructors

### ArrayAdapter

    public ArrayAdapter (Context context,
                    int resource)

Constructor

Parameters
`context` | `Context`: The current context. This value cannot be `null`.
`resource` | `int`: The resource ID for a layout file containing a TextView to use when instantiating views.

### ArrayAdapter

    public ArrayAdapter (Context context,
                    int resource,
                    int textViewResourceId)

Constructor

Parameters
`context` | `Context`: The current context. This value cannot be `null`.
`resource` | `int`: The resource ID for a layout file containing a layout to use when instantiating views.
`textViewResourceId` | `int`: The id of the TextView within the layout resource to be populated

### ArrayAdapter

    public ArrayAdapter (Context context,
                    int resource,
                    T[] objects)

Constructor. This constructor will result in the underlying data collection being immutable, so methods such as `clear()` will throw an exception.

Parameters
`context` | `Context`: The current context. This value cannot be `null`.
`resource` | `int`: The resource ID for a layout file containing a TextView to use when instantiating views.
`objects` | `T`: The objects to represent in the ListView. This value cannot be `null`.

### ArrayAdapter

    public ArrayAdapter (Context context,
                    int resource,
                    int textViewResourceId,
                    T[] objects)

Constructor. This constructor will result in the underlying data collection being immutable, so methods such as `clear()` will throw an exception.

Parameters
`context` | `Context`: The current context. This value cannot be `null`.
`resource` | `int`: The resource ID for a layout file containing a layout to use when instantiating views.
`textViewResourceId` | `int`: The id of the TextView within the layout resource to be populated
`objects` | `T`: The objects to represent in the ListView. This value cannot be `null`.

### ArrayAdapter

    public ArrayAdapter (Context context,
                    int resource,
                    List<T> objects)

Constructor

Parameters
`context` | `Context`: The current context. This value cannot be `null`.
`resource` | `int`: The resource ID for a layout file containing a TextView to use when instantiating views.
`objects` | `List`: The objects to represent in the ListView. This value cannot be `null`.

### ArrayAdapter

    public ArrayAdapter (Context context,
                    int resource,
                    int textViewResourceId,
                    List<T> objects)

Constructor

Parameters
`context` | `Context`: The current context. This value cannot be `null`.
`resource` | `int`: The resource ID for a layout file containing a layout to use when instantiating views.
`textViewResourceId` | `int`: The id of the TextView within the layout resource to be populated
`objects` | `List`: The objects to represent in the ListView. This value cannot be `null`.

## Public methods

### add

    public void add (T object)

Adds the specified object at the end of the array.

Parameters
`object` | `T`: The object to add at the end of the array. This value may be `null`.

Throws
`UnsupportedOperationException` | if the underlying data collection is immutable

### addAll

    public void addAll (T... items)

Adds the specified items at the end of the array.

Parameters
`items` | `T`: The items to add at the end of the array.

Throws
`UnsupportedOperationException` | if the underlying data collection is immutable

### addAll

    public void addAll (Collection<? extends T> collection)

Adds the specified Collection at the end of the array.

Parameters
`collection` | `Collection`: The Collection to add at the end of the array. This value cannot be `null`.

Throws
`UnsupportedOperationException` | if the `addAll` operation is not supported by this list
`ClassCastException` | if the class of an element of the specified collection prevents it from being added to this list
`NullPointerException` | if the specified collection contains one or more null elements and this list does not permit null elements, or if the specified collection is null
`IllegalArgumentException` | if some property of an element of the specified collection prevents it from being added to this list

### clear

    public void clear ()

Remove all elements from the list.

Throws
`UnsupportedOperationException` | if the underlying data collection is immutable

### createFromResource

    public static ArrayAdapter<CharSequence> createFromResource (Context context,
                    int textArrayResId,
                    int textViewResId)

Creates a new ArrayAdapter from external resources. The content of the array is obtained through `Resources.getTextArray(int)`.

Parameters
`context` | `Context`: The application's environment. This value cannot be `null`.
`textArrayResId` | `int`: The identifier of the array to use as the data source.
`textViewResId` | `int`: The identifier of the layout used to create views.

Returns
`ArrayAdapter<CharSequence>` | An ArrayAdapter. This value cannot be `null`.

### 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[]` | values from the string array used by `createFromResource(android.content.Context, int, int)`, or `null` if object was created otherwsie or if contents were dynamically changed after creation.

### getContext

    public Context getContext ()

Returns the context associated with this array adapter. The context is used to create views from the resource passed to the constructor.

Returns
`Context` | The Context associated with this adapter. This value cannot be `null`.

### getCount

    public int getCount ()

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

Returns
`int` | Count of items.

### getDropDownView

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

Gets a `View` that displays in the drop down popup the data at the specified position in the data set.

Parameters
`position` | `int`: index of the item whose view we want.
`convertView` | `View`: This value may be `null`.
`parent` | `ViewGroup`: This value cannot be `null`.

Returns
`View` | a `View` corresponding to the data at the specified position.

### getDropDownViewTheme

    public Resources.Theme getDropDownViewTheme ()

Returns the value previously set by a call to `setDropDownViewTheme(android.content.res.Resources.Theme)`.

Returns
`Resources.Theme` | This value may be `null`.

### getFilter

    public Filter getFilter ()

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

This method is usually implemented by `Adapter` classes.

Returns
`Filter` | This value cannot be `null`.

### getItem

    public T 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
`T` | This value may be `null`.

### getItemId

    public 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.

### getPosition

    public int getPosition (T item)

Returns the position of the specified item in the array.

Parameters
`item` | `T`: The item to retrieve the position of. This value may be `null`.

Returns
`int` | The position of the specified item.

### getView

    public 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`: This value may be `null`.
`parent` | `ViewGroup`: This value cannot be `null`.

Returns
`View` | This value cannot be `null`.

### insert

    public void insert (T object,
                    int index)

Inserts the specified object at the specified index in the array.

Parameters
`object` | `T`: The object to insert into the array. This value may be `null`.
`index` | `int`: The index at which the object must be inserted.

Throws
`UnsupportedOperationException` | if the underlying data collection is immutable

### notifyDataSetChanged

    public void notifyDataSetChanged ()

Notifies the attached observers that the underlying data has been changed and any View reflecting the data set should refresh itself.

### remove

    public void remove (T object)

Removes the specified object from the array.

Parameters
`object` | `T`: The object to remove. This value may be `null`.

Throws
`UnsupportedOperationException` | if the underlying data collection is immutable

### setDropDownViewResource

    public void setDropDownViewResource (int resource)

Sets the layout resource to create the drop down views.

Parameters
`resource` | `int`: the layout resource defining the drop down views

See also:

- `getDropDownView(int, android.view.View, android.view.ViewGroup)`

### setDropDownViewTheme

    public void setDropDownViewTheme (Resources.Theme theme)

Sets the `Resources.Theme` against which drop-down views are inflated.

By default, drop-down views are inflated against the theme of the `Context` passed to the adapter's constructor.

Parameters
`theme` | `Resources.Theme`: the theme against which to inflate drop-down views or `null` to use the theme from the adapter's context This value may be `null`.

See also:

- `getDropDownView(int, View, ViewGroup)`

### setNotifyOnChange

    public void setNotifyOnChange (boolean notifyOnChange)

Control whether methods that change the list (`add(T)`, `addAll(java.util.Collection)`, `addAll(java.lang.Object[])`, `insert(T, int)`, `remove(T)`, `clear()`, `sort(java.util.Comparator)`) automatically call `notifyDataSetChanged()`. If set to false, caller must manually call notifyDataSetChanged() to have the changes reflected in the attached view. The default is true, and calling notifyDataSetChanged() resets the flag to true.

Parameters
`notifyOnChange` | `boolean`: if true, modifications to the list will automatically call `notifyDataSetChanged()`

### sort

    public void sort (Comparator<? super T> comparator)

Sorts the content of this adapter using the specified comparator.

Parameters
`comparator` | `Comparator`: The comparator used to sort the objects contained in this adapter. This value cannot be `null`.

Full name *
Email address *
Company / developer name
One of your Play Store app URLs *
Which best describes your business:*
Apps
Games
Apps & Games
*
*