ObjectAdapter
public
abstract
class
ObjectAdapter
extends Object
java.lang.Object | |
↳ | androidx.leanback.widget.ObjectAdapter |
Base class adapter to be used in leanback activities. Provides access to a data model and is
decoupled from the presentation of the items via PresenterSelector
.
Summary
Nested classes | |
---|---|
class |
ObjectAdapter.DataObserver
A DataObserver can be notified when an ObjectAdapter's underlying data changes. |
Constants | |
---|---|
int |
NO_ID
Indicates that an id has not been set. |
Public constructors | |
---|---|
ObjectAdapter(PresenterSelector presenterSelector)
Constructs an adapter with the given |
|
ObjectAdapter(Presenter presenter)
Constructs an adapter that uses the given |
|
ObjectAdapter()
Constructs an adapter. |
Public methods | |
---|---|
abstract
Object
|
get(int position)
Returns the item for the given position. |
long
|
getId(int position)
Returns the id for the given position. |
final
Presenter
|
getPresenter(Object item)
Returns the |
final
PresenterSelector
|
getPresenterSelector()
Returns the presenter selector for this ObjectAdapter. |
final
boolean
|
hasStableIds()
Returns true if the item ids are stable across changes to the underlying data. |
boolean
|
isImmediateNotifySupported()
Returns true if the adapter pairs each underlying data change with a call to notify and false otherwise. |
final
void
|
notifyItemRangeChanged(int positionStart, int itemCount, Object payload)
Notifies UI that some items has changed. |
final
void
|
notifyItemRangeChanged(int positionStart, int itemCount)
Notifies UI that some items has changed. |
final
void
|
registerObserver(ObjectAdapter.DataObserver observer)
Registers a DataObserver for data change notifications. |
final
void
|
setHasStableIds(boolean hasStableIds)
Sets whether the item ids are stable across changes to the underlying data. |
final
void
|
setPresenterSelector(PresenterSelector presenterSelector)
Sets the presenter selector. |
abstract
int
|
size()
Returns the number of items in the adapter. |
final
void
|
unregisterAllObservers()
Unregisters all DataObservers for this ObjectAdapter. |
final
void
|
unregisterObserver(ObjectAdapter.DataObserver observer)
Unregisters a DataObserver for data change notifications. |
Protected methods | |
---|---|
final
void
|
notifyChanged()
Notifies UI that the underlying data has changed. |
final
void
|
notifyItemMoved(int fromPosition, int toPosition)
Notifies UI that item at fromPosition has been moved to toPosition. |
final
void
|
notifyItemRangeInserted(int positionStart, int itemCount)
Notifies UI that new items has been inserted. |
final
void
|
notifyItemRangeRemoved(int positionStart, int itemCount)
Notifies UI that some items that has been removed. |
void
|
onHasStableIdsChanged()
Called when |
void
|
onPresenterSelectorChanged()
Called when |
Inherited methods | |
---|---|
Constants
NO_ID
public static final int NO_ID
Indicates that an id has not been set.
Constant Value: -1 (0xffffffff)
Public constructors
ObjectAdapter
public ObjectAdapter (PresenterSelector presenterSelector)
Constructs an adapter with the given PresenterSelector
.
Parameters | |
---|---|
presenterSelector |
PresenterSelector |
ObjectAdapter
public ObjectAdapter (Presenter presenter)
Constructs an adapter that uses the given Presenter
for all items.
Parameters | |
---|---|
presenter |
Presenter |
ObjectAdapter
public ObjectAdapter ()
Constructs an adapter.
Public methods
get
public abstract Object get (int position)
Returns the item for the given position.
Parameters | |
---|---|
position |
int |
Returns | |
---|---|
Object |
getId
public long getId (int position)
Returns the id for the given position.
Parameters | |
---|---|
position |
int |
Returns | |
---|---|
long |
getPresenter
public final Presenter getPresenter (Object item)
Returns the Presenter
for the given item from the adapter.
Parameters | |
---|---|
item |
Object |
Returns | |
---|---|
Presenter |
getPresenterSelector
public final PresenterSelector getPresenterSelector ()
Returns the presenter selector for this ObjectAdapter.
Returns | |
---|---|
PresenterSelector |
hasStableIds
public final boolean hasStableIds ()
Returns true if the item ids are stable across changes to the
underlying data. When this is true, clients of the ObjectAdapter can use
getId(int)
to correlate Objects across changes.
Returns | |
---|---|
boolean |
isImmediateNotifySupported
public boolean isImmediateNotifySupported ()
Returns true if the adapter pairs each underlying data change with a call to notify and false otherwise.
Returns | |
---|---|
boolean |
notifyItemRangeChanged
public final void notifyItemRangeChanged (int positionStart, int itemCount, Object payload)
Notifies UI that some items has changed.
Parameters | |
---|---|
positionStart |
int : Starting position of the changed items. |
itemCount |
int : Total number of items that changed. |
payload |
Object : Optional parameter, use null to identify a "full" update.
|
notifyItemRangeChanged
public final void notifyItemRangeChanged (int positionStart, int itemCount)
Notifies UI that some items has changed.
Parameters | |
---|---|
positionStart |
int : Starting position of the changed items. |
itemCount |
int : Total number of items that changed.
|
registerObserver
public final void registerObserver (ObjectAdapter.DataObserver observer)
Registers a DataObserver for data change notifications.
Parameters | |
---|---|
observer |
ObjectAdapter.DataObserver |
setHasStableIds
public final void setHasStableIds (boolean hasStableIds)
Sets whether the item ids are stable across changes to the underlying data.
Parameters | |
---|---|
hasStableIds |
boolean |
setPresenterSelector
public final void setPresenterSelector (PresenterSelector presenterSelector)
Sets the presenter selector. May not be null.
Parameters | |
---|---|
presenterSelector |
PresenterSelector |
size
public abstract int size ()
Returns the number of items in the adapter.
Returns | |
---|---|
int |
unregisterAllObservers
public final void unregisterAllObservers ()
Unregisters all DataObservers for this ObjectAdapter.
unregisterObserver
public final void unregisterObserver (ObjectAdapter.DataObserver observer)
Unregisters a DataObserver for data change notifications.
Parameters | |
---|---|
observer |
ObjectAdapter.DataObserver |
Protected methods
notifyChanged
protected final void notifyChanged ()
Notifies UI that the underlying data has changed.
notifyItemMoved
protected final void notifyItemMoved (int fromPosition, int toPosition)
Notifies UI that item at fromPosition has been moved to toPosition.
Parameters | |
---|---|
fromPosition |
int : Previous position of the item. |
toPosition |
int : New position of the item.
|
notifyItemRangeInserted
protected final void notifyItemRangeInserted (int positionStart, int itemCount)
Notifies UI that new items has been inserted.
Parameters | |
---|---|
positionStart |
int : Position where new items has been inserted. |
itemCount |
int : Count of the new items has been inserted.
|
notifyItemRangeRemoved
protected final void notifyItemRangeRemoved (int positionStart, int itemCount)
Notifies UI that some items that has been removed.
Parameters | |
---|---|
positionStart |
int : Starting position of the removed items. |
itemCount |
int : Total number of items that has been removed.
|
onHasStableIdsChanged
protected void onHasStableIdsChanged ()
Called when setHasStableIds(boolean)
is called and the status
of stable ids has changed.
onPresenterSelectorChanged
protected void onPresenterSelectorChanged ()
Called when setPresenterSelector(PresenterSelector)
is called
and the PresenterSelector differs from the previous one.
Content and code samples on this page are subject to the licenses described in the Content License. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2020-09-30 UTC.