AccessibilityDelegateCompat

Added in 1.1.0

class AccessibilityDelegateCompat

Known direct subclasses
ExploreByTouchHelper

ExploreByTouchHelper is a utility class for implementing accessibility support in custom Views that represent a collection of View-like logical items.

RecyclerViewAccessibilityDelegate.ItemDelegate

The default implementation of accessibility delegate for the individual items of the RecyclerView.

RecyclerViewAccessibilityDelegate

The AccessibilityDelegate used by RecyclerView.


Helper for accessing AccessibilityDelegate.

Note: On platform versions prior to API 23, delegate methods on views in the android.widget.* package are called before host methods. This prevents certain properties such as class name from being modified by overriding onInitializeAccessibilityNodeInfo, as any changes will be overwritten by the host class.

Starting in API 23, delegate methods are called after host methods, which all properties to be modified without being overwritten by the host class.

Summary

Public constructors

Creates a new instance.

Public functions

Boolean

Dispatches an AccessibilityEvent to the host View first and then to its children for adding their text content to the event.

AccessibilityNodeProviderCompat?

Gets the provider for managing a virtual view hierarchy rooted at this View and reported to AccessibilityServices that explore the window content.

Unit

Initializes an AccessibilityEvent with information about the the host View which is the event source.

Unit

Initializes an AccessibilityNodeInfoCompat with information about the host view.

Unit

Gives a chance to the host View to populate the accessibility event with its text content.

Boolean
onRequestSendAccessibilityEvent(
    host: ViewGroup,
    child: View,
    event: AccessibilityEvent
)

Called when a child of the host View has requested sending an AccessibilityEvent and gives an opportunity to the parent (the host) to augment the event.

Boolean
performAccessibilityAction(host: View, action: Int, args: Bundle?)

Performs the specified accessibility action on the view.

Unit
sendAccessibilityEvent(host: View, eventType: Int)

Sends an accessibility event of the given type.

Unit

Sends an accessibility event.

Public constructors

AccessibilityDelegateCompat

Added in 1.1.0
AccessibilityDelegateCompat()

Creates a new instance.

Public functions

dispatchPopulateAccessibilityEvent

Added in 1.1.0
fun dispatchPopulateAccessibilityEvent(host: View, event: AccessibilityEvent): Boolean

Dispatches an AccessibilityEvent to the host View first and then to its children for adding their text content to the event.

The default implementation behaves as View#dispatchPopulateAccessibilityEvent(AccessibilityEvent) for the case of no accessibility delegate been set.

Parameters
host: View

The View hosting the delegate.

event: AccessibilityEvent

The event.

Returns
Boolean

True if the event population was completed.

See also
dispatchPopulateAccessibilityEvent

View#dispatchPopulateAccessibilityEvent(AccessibilityEvent)

getAccessibilityNodeProvider

Added in 1.1.0
fun getAccessibilityNodeProvider(host: View): AccessibilityNodeProviderCompat?

Gets the provider for managing a virtual view hierarchy rooted at this View and reported to AccessibilityServices that explore the window content.

The default implementation behaves as ViewCompat#getAccessibilityNodeProvider(View) for the case of no accessibility delegate been set.

Returns
AccessibilityNodeProviderCompat?

The provider.

onInitializeAccessibilityEvent

Added in 1.1.0
fun onInitializeAccessibilityEvent(host: View, event: AccessibilityEvent): Unit

Initializes an AccessibilityEvent with information about the the host View which is the event source.

The default implementation behaves as ViewCompat#onInitalizeAccessibilityEvent(View v, AccessibilityEvent event) for the case of no accessibility delegate been set.

Parameters
host: View

The View hosting the delegate.

event: AccessibilityEvent

The event to initialize.

See also
onInitializeAccessibilityEvent

ViewCompat#onInitializeAccessibilityEvent(View, AccessibilityEvent)

onInitializeAccessibilityNodeInfo

Added in 1.1.0
fun onInitializeAccessibilityNodeInfo(
    host: View,
    info: AccessibilityNodeInfoCompat
): Unit

Initializes an AccessibilityNodeInfoCompat with information about the host view.

The default implementation behaves as ViewCompat#onInitializeAccessibilityNodeInfo(View, AccessibilityNodeInfoCompat) for the case of no accessibility delegate been set.

Parameters
host: View

The View hosting the delegate.

info: AccessibilityNodeInfoCompat

The instance to initialize.

See also
onInitializeAccessibilityNodeInfo

ViewCompat#onInitializeAccessibilityNodeInfo(View, AccessibilityNodeInfoCompat)

onPopulateAccessibilityEvent

Added in 1.1.0
fun onPopulateAccessibilityEvent(host: View, event: AccessibilityEvent): Unit

Gives a chance to the host View to populate the accessibility event with its text content.

The default implementation behaves as ViewCompat#onPopulateAccessibilityEvent(AccessibilityEvent) for the case of no accessibility delegate been set.

Parameters
host: View

The View hosting the delegate.

event: AccessibilityEvent

The accessibility event which to populate.

See also
onPopulateAccessibilityEvent

ViewCompat#onPopulateAccessibilityEvent(View, AccessibilityEvent)

onRequestSendAccessibilityEvent

Added in 1.1.0
fun onRequestSendAccessibilityEvent(
    host: ViewGroup,
    child: View,
    event: AccessibilityEvent
): Boolean

Called when a child of the host View has requested sending an AccessibilityEvent and gives an opportunity to the parent (the host) to augment the event.

The default implementation behaves as ViewGroupCompat#onRequestSendAccessibilityEvent(ViewGroup, View, AccessibilityEvent) for the case of no accessibility delegate been set.

Parameters
host: ViewGroup

The View hosting the delegate.

child: View

The child which requests sending the event.

event: AccessibilityEvent

The event to be sent.

Returns
Boolean

True if the event should be sent

See also
onRequestSendAccessibilityEvent

ViewGroupCompat#onRequestSendAccessibilityEvent(ViewGroup, View, AccessibilityEvent)

performAccessibilityAction

Added in 1.1.0
fun performAccessibilityAction(host: View, action: Int, args: Bundle?): Boolean

Performs the specified accessibility action on the view. For possible accessibility actions look at AccessibilityNodeInfoCompat.

The default implementation behaves as View#performAccessibilityAction(int, Bundle) for the case of no accessibility delegate been set.

Parameters
host: View

View on which to perform the action.

action: Int

The action to perform.

args: Bundle?

Optional action arguments.

Returns
Boolean

Whether the action was performed.

See also
performAccessibilityAction

View#performAccessibilityAction(int, Bundle)

sendAccessibilityEvent

Added in 1.1.0
fun sendAccessibilityEvent(host: View, eventType: Int): Unit

Sends an accessibility event of the given type. If accessibility is not enabled this method has no effect.

The default implementation behaves as View#sendAccessibilityEvent(int) for the case of no accessibility delegate been set.

Parameters
host: View

The View hosting the delegate.

eventType: Int

The type of the event to send.

See also
sendAccessibilityEvent

View#sendAccessibilityEvent(int)

sendAccessibilityEventUnchecked

Added in 1.1.0
fun sendAccessibilityEventUnchecked(host: View, event: AccessibilityEvent): Unit

Sends an accessibility event. This method behaves exactly as sendAccessibilityEvent but takes as an argument an empty AccessibilityEvent and does not perform a check whether accessibility is enabled.

The default implementation behaves as View#sendAccessibilityEventUnchecked(AccessibilityEvent) for the case of no accessibility delegate been set.

Parameters
host: View

The View hosting the delegate.

event: AccessibilityEvent

The event to send.

See also
sendAccessibilityEventUnchecked

View#sendAccessibilityEventUnchecked(AccessibilityEvent)