public abstract class FocusDelegate<K>


Override methods in this class to provide application specific behaviors related to focusing item.

Parameters
<K>

Selection key type. @see StorageStrategy for supported types.

Summary

Public constructors

Public methods

abstract void

If the environment supports focus and something is focused, unfocus it.

abstract void

If environment supports focus, focus item.

abstract int

Returns the position of the currently focused item, or NO_POSITION if nothing is focused.

abstract boolean

Public constructors

FocusDelegate

Added in 1.0.0
public FocusDelegate()

Public methods

clearFocus

Added in 1.0.0
public abstract void clearFocus()

If the environment supports focus and something is focused, unfocus it.

focusItem

Added in 1.0.0
public abstract void focusItem(@NonNull ItemDetailsLookup.ItemDetails<K> item)

If environment supports focus, focus item.

getFocusedPosition

Added in 1.0.0
public abstract int getFocusedPosition()

Returns the position of the currently focused item, or NO_POSITION if nothing is focused.

You must implement this feature if you intend your app to work well with mouse and keyboard. Selection ranges are inferred from focused item when there is no explicit last-selected item.

You can manage and advance focus using keyboard arrows, reflecting this state visibly in the view item. Use can then press shift, then click another item with their mouse to select all items between the focused item and the clicked item.

Returns
int

the position of the currently focused item, or RecyclerView#NO_POSITION if none.

hasFocusedItem

Added in 1.0.0
public abstract boolean hasFocusedItem()
Returns
boolean

true if there is a focused item.