added in version 22.1.0
belongs to Maven artifact


public abstract class ObjectAdapter
extends Object

Known Direct Subclasses

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.


Nested classes

class ObjectAdapter.DataObserver

A DataObserver can be notified when an ObjectAdapter's underlying data changes. 


int NO_ID

Indicates that an id has not been set.

Public constructors

ObjectAdapter(PresenterSelector presenterSelector)

Constructs an adapter with the given PresenterSelector.

ObjectAdapter(Presenter presenter)

Constructs an adapter that uses the given Presenter for all items.


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 Presenter for the given item from the adapter.

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