Item - Type of the item presented within a data set of a subclass of this SimpleAdapter.VH - Type of the view holder used within a subclass of this SimpleAdapter.public abstract class SimpleAdapter<Item,VH> extends BaseAdapter<Item,VH> implements ItemsAdapter<Item>
BaseAdapter implementation which specifies simple API for data set management of items.
This adapter supports changing of the current data set via changeItems(List) and obtaining
an item for a desired position via getItem(int). All items attached to the adapter may
be obtained via getItems().
In the simplest implementation case of this adapter, only BaseAdapter.onCreateView(android.view.ViewGroup, int)
and BaseAdapter.onBindViewHolder(Object, int) methods are required to be implemented to take a full
advantage of this adapter class.
mContext, mLayoutInflater, mResourcesNO_ID, NO_POSITIONIGNORE_ITEM_VIEW_TYPE, NO_SELECTION| Constructor and Description |
|---|
SimpleAdapter(Context context)
Creates a new instance of SimpleAdapter without initial items data set.
|
SimpleAdapter(Context context,
Item[] items)
Same as
SimpleAdapter(Context, List) for array of initial items data set. |
SimpleAdapter(Context context,
List<Item> items)
Creates a new instance of SimpleAdapter with the given initial items data set.
|
| Modifier and Type | Method and Description |
|---|---|
void |
changeItems(List<Item> items)
Same as
ItemsAdapter.swapItems(List) without returning the old data set of items. |
Item |
getItem(int position)
Returns the item (model) containing data from this data set for the specified position.
|
int |
getItemCount()
Returns the count of items available within this data set.
|
List<Item> |
getItems()
Returns the current items data set of this adapter.
|
boolean |
hasItemAt(int position)
Returns a boolean flag indicating whether this data set has item that can provide data for the
specified position or not.
|
protected boolean |
onItemsChange(List<Item> newItems,
List<Item> oldItems)
Called from
swapItems(List) in order to handle change in items of this adapter. |
List<Item> |
swapItems(List<Item> items)
Changes items data set of this adapter and returns the old items data set.
|
currentViewType, getCount, getItemId, getView, hasStableIds, inflate, notifyDataSetActionSelected, notifyDataSetChanged, notifyDataSetInvalidated, onBindViewHolder, onCreateView, onCreateViewHolder, onDataSetActionSelected, registerOnDataChangeListener, registerOnDataSetActionListener, registerOnDataSetListener, restoreInstanceState, saveInstanceState, unregisterOnDataChangeListener, unregisterOnDataSetActionListener, unregisterOnDataSetListenerareAllItemsEnabled, getDropDownView, getItemViewType, getViewTypeCount, isEmpty, isEnabled, registerDataSetObserver, unregisterDataSetObserverclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waithasStableIds, isEnabled, restoreInstanceState, saveInstanceStategetItemId, isEmpty, registerOnDataChangeListener, registerOnDataSetActionListener, registerOnDataSetListener, unregisterOnDataChangeListener, unregisterOnDataSetActionListener, unregisterOnDataSetListenerpublic SimpleAdapter(@NonNull Context context)
context - Context in which will be this adapter used.SimpleAdapter(Context, Object[]),
SimpleAdapter(Context, List)public SimpleAdapter(@NonNull Context context, @NonNull Item[] items)
SimpleAdapter(Context, List) for array of initial items data set.public SimpleAdapter(@NonNull Context context, @NonNull List<Item> items)
context - Context in which will be this adapter used.items - List of items to be used as initial data set for this adapter.public void changeItems(@Nullable List<Item> items)
ItemsAdapterItemsAdapter.swapItems(List) without returning the old data set of items.changeItems in interface ItemsAdapter<Item>items - The desired items to be changed. May be null to clear the current ones.ItemsAdapter.getItems()@Nullable public List<Item> swapItems(@Nullable List<Item> items)
ItemsAdapterswapItems in interface ItemsAdapter<Item>items - The desired items to be changed. May be null to clear the current ones.null if this adapter does not have items data set
specified.ItemsAdapter.getItems()protected boolean onItemsChange(@Nullable List<Item> newItems, @Nullable List<Item> oldItems)
swapItems(List) in order to handle change in items of this adapter.
Note, that during this call this adapter has already the new items attached.
This implementation does nothing.
newItems - The new items data set for this adapter.oldItems - The old items data set of this adapter that has been replaced by the new one.True if change has been handled and appropriate callbacks has been fired to
registered observers, false if default BaseAdapter.notifyDataSetChanged() should be invoked.@Nullable public List<Item> getItems()
ItemsAdaptergetItems in interface ItemsAdapter<Item>null if there is no items data set provided
by this adapter.ItemsAdapter.changeItems(List),
ItemsAdapter.swapItems(List)public int getItemCount()
DataSetgetItemCount in interface DataSet<Item>0 if no cursor is attached or it has
no rows.DataSet.isEmpty(),
DataSet.hasItemAt(int),
DataSet.getItem(int)public boolean hasItemAt(int position)
DataSethasItemAt in interface DataSet<Item>position - The position of item to check.True if DataSet.getItem(int) can be called 'safely', false otherwise.@NonNull public Item getItem(int position)
DataSetgetItem in interface AdaptergetItem in interface DataSet<Item>position - Position of the item to obtain.DataSet.hasItemAt(int),
DataSet.getItemId(int)