public class

ArrayAdapter

extends BaseAdapter
implements Filterable
java.lang.Object
   ↳ android.widget.BaseAdapter
     ↳ android.widget.ArrayAdapter<T>

Class Overview

A ListAdapter that manages a ListView backed by an array of arbitrary objects. By default this class expects that the provided resource id references a single TextView. If you want to use a more complex layout, use the constructors that also takes a field id. That field id should reference a TextView in the larger layout resource. However the TextView is referenced, it will be filled with the toString() of each object in the array. You can add lists or arrays of custom objects. Override the toString() method of your objects to determine what text will be displayed for the item in the list. To use something other than TextViews for the array display, for instance, ImageViews, or to have some of data besides toString() results fill the views, override getView(int, View, ViewGroup) to return the type of view you want.

Summary

[Expand]
Inherited Constants
From interface android.widget.Adapter
Public Constructors
ArrayAdapter(Context context, int textViewResourceId)
Constructor
ArrayAdapter(Context context, int resource, int textViewResourceId)
Constructor
ArrayAdapter(Context context, int textViewResourceId, T[] objects)
Constructor
ArrayAdapter(Context context, int resource, int textViewResourceId, T[] objects)
Constructor
ArrayAdapter(Context context, int textViewResourceId, 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 clear()
Remove all elements from the list.
static ArrayAdapter<CharSequence> createFromResource(Context context, int textArrayResId, int textViewResId)
Creates a new ArrayAdapter from external resources.
Context getContext()
Returns the context associated with this array adapter.
int getCount()
View getDropDownView(int position, View convertView, ViewGroup parent)

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

Filter getFilter()

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

T getItem(int position)
long getItemId(int position)
int getPosition(T item)
Returns the position of the specified item in the array.
View getView(int position, View convertView, ViewGroup parent)
void insert(T object, int index)
Inserts the specified object at the specified index in the array.
void notifyDataSetChanged()
Notifies the attached View that the underlying data has been changed and it 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 setNotifyOnChange(boolean notifyOnChange)
Control whether methods that change the list (add(T), insert(T, int), remove(T), clear()) automatically call notifyDataSetChanged().
void sort(Comparator<? super T> comparator)
Sorts the content of this adapter using the specified comparator.
[Expand]
Inherited Methods
From class android.widget.BaseAdapter
From class java.lang.Object
From interface android.widget.Adapter
From interface android.widget.Filterable
From interface android.widget.ListAdapter
From interface android.widget.SpinnerAdapter

Public Constructors

public ArrayAdapter (Context context, int textViewResourceId)

Constructor

Parameters
context The current context.
textViewResourceId The resource ID for a layout file containing a TextView to use when instantiating views.

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

Constructor

Parameters
context The current context.
resource The resource ID for a layout file containing a layout to use when instantiating views.
textViewResourceId The id of the TextView within the layout resource to be populated

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

Constructor

Parameters
context The current context.
textViewResourceId The resource ID for a layout file containing a TextView to use when instantiating views.
objects The objects to represent in the ListView.

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

Constructor

Parameters
context The current context.
resource The resource ID for a layout file containing a layout to use when instantiating views.
textViewResourceId The id of the TextView within the layout resource to be populated
objects The objects to represent in the ListView.

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

Constructor

Parameters
context The current context.
textViewResourceId The resource ID for a layout file containing a TextView to use when instantiating views.
objects The objects to represent in the ListView.

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

Constructor

Parameters
context The current context.
resource The resource ID for a layout file containing a layout to use when instantiating views.
textViewResourceId The id of the TextView within the layout resource to be populated
objects The objects to represent in the ListView.

Public Methods

public void add (T object)

Adds the specified object at the end of the array.

Parameters
object The object to add at the end of the array.

public void clear ()

Remove all elements from the list.

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 getTextArray(int).

Parameters
context The application's environment.
textArrayResId The identifier of the array to use as the data source.
textViewResId The identifier of the layout used to create views.
Returns
  • An ArrayAdapter.

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
  • The Context associated with this adapter.

public int getCount ()

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

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

Parameters
position index 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.
parent the parent that this view will eventually be attached to
Returns
  • a View corresponding to the data at the specified position.

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
  • a filter used to constrain data

public T getItem (int position)

public long getItemId (int position)

public int getPosition (T item)

Returns the position of the specified item in the array.

Parameters
item The item to retrieve the position of.
Returns
  • The position of the specified item.

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

public void insert (T object, int index)

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

Parameters
object The object to insert into the array.
index The index at which the object must be inserted.

public void notifyDataSetChanged ()

Notifies the attached View that the underlying data has been changed and it should refresh itself.

public void remove (T object)

Removes the specified object from the array.

Parameters
object The object to remove.

public void setDropDownViewResource (int resource)

Sets the layout resource to create the drop down views.

Parameters
resource the layout resource defining the drop down views

public void setNotifyOnChange (boolean notifyOnChange)

Control whether methods that change the list (add(T), insert(T, int), remove(T), clear()) 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 if true, modifications to the list will automatically call notifyDataSetChanged()

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

Sorts the content of this adapter using the specified comparator.

Parameters
comparator The comparator used to sort the objects contained in this adapter.