Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels) Summary: [Nested Classes](https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#nestedclasses) \| [Constants](https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#constants) \| [Inherited Constants](https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#inhconstants) \| [Fields](https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#lfields) \| [Ctors](https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#pubctors) \| [Methods](https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#pubmethods) \| [Inherited Methods](https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#inhmethods)

# AccessibilityNodeInfo

*** ** * ** ***


`
public


class
AccessibilityNodeInfo
`


`

extends https://developer.android.com/reference/java/lang/Object


`

`


implements

https://developer.android.com/reference/android/os/Parcelable


`

|---|---|
| [java.lang.Object](https://developer.android.com/reference/java/lang/Object) ||
| ↳ | android.view.accessibility.AccessibilityNodeInfo |

<br />

*** ** * ** ***

This class represents a node of the window content as well as actions that
can be requested from its source. From the point of view of an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService` a window's content is
presented as a tree of accessibility node infos, which may or may not map one-to-one
to the view hierarchy. In other words, a custom view is free to report itself as
a tree of accessibility node info.


Once an accessibility node info is delivered to an accessibility service it is
made immutable and calling a state mutation method generates an error. See
`https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setQueryFromAppProcessEnabled(android.view.View,%20boolean)` if you would like to inspect the
node tree from the app process for testing or debugging tools.


Please refer to `https://developer.android.com/reference/android/accessibilityservice/AccessibilityService` for
details about how to obtain a handle to window content as a tree of accessibility
node info as well as details about the security model.

### Developer Guides

For more information about making applications accessible, read the
[Accessibility](https://developer.android.com/guide/topics/ui/accessibility)
developer guide.

> [!NOTE]
> **Note:** Use a `https://developer.android.com/reference/androidx/core/view/accessibility/AccessibilityNodeInfoCompat.html` wrapper instead of this class for backwards-compatibility.

<br />

**See also:**

- `https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityEvent`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityManager`

## Summary

| ### Nested classes ||
|---|---|
| ` class` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction` A class defining an action that can be performed on an `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo`. |
| ` class` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.CollectionInfo` Class with information if a node is a collection. |
| ` class` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.CollectionItemInfo` Class with information if a node is a collection item. |
| ` class` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.ExtraRenderingInfo` Class with information of a view useful to evaluate accessibility needs. |
| ` class` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.MathInfo` A class that holds information about a node that represents a mathematical expression. |
| ` class` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.RangeInfo` Class with information if a node is a range. |
| ` class` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.Selection` Represents a selection of content that may extend across more than one `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo` instance. |
| ` class` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.SelectionPosition` A class which defines either the start or end of a selection that can span across multiple AccessibilityNodeInfo objects. |
| ` class` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.StructuredDataInfo` An abstract base class for holding structured semantic information about a node. |
| ` class` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.TouchDelegateInfo` Class with information of touch delegated views and regions from `https://developer.android.com/reference/android/view/TouchDelegate` for the `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo`. |

| ### Constants ||
|---|---|
| `int` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_ACCESSIBILITY_FOCUS` Action that gives accessibility focus to the node. |
| `https://developer.android.com/reference/java/lang/String` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_ARGUMENT_COLUMN_INT` Argument for specifying the collection column to make visible on screen. |
| `https://developer.android.com/reference/java/lang/String` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_ARGUMENT_DIRECTION_INT` <br /> Argument to represent the direction when using `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_SCROLL_IN_DIRECTION`. |
| `https://developer.android.com/reference/java/lang/String` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_ARGUMENT_EXTEND_SELECTION_BOOLEAN` Argument for whether when moving at granularity to extend the selection or to move it otherwise. |
| `https://developer.android.com/reference/java/lang/String` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_ARGUMENT_HTML_ELEMENT_STRING` Argument for which HTML element to get moving to the next/previous HTML element. |
| `https://developer.android.com/reference/java/lang/String` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_ARGUMENT_MOVEMENT_GRANULARITY_INT` Argument for which movement granularity to be used when traversing the node text. |
| `https://developer.android.com/reference/java/lang/String` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_ARGUMENT_MOVE_WINDOW_X` Argument for specifying the x coordinate to which to move a window. |
| `https://developer.android.com/reference/java/lang/String` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_ARGUMENT_MOVE_WINDOW_Y` Argument for specifying the y coordinate to which to move a window. |
| `https://developer.android.com/reference/java/lang/String` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_ARGUMENT_PRESS_AND_HOLD_DURATION_MILLIS_INT` Argument to represent the duration in milliseconds to press and hold a node. |
| `https://developer.android.com/reference/java/lang/String` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_ARGUMENT_PROGRESS_VALUE` Argument for specifying the progress value to set. |
| `https://developer.android.com/reference/java/lang/String` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_ARGUMENT_ROW_INT` Argument for specifying the collection row to make visible on screen. |
| `https://developer.android.com/reference/java/lang/String` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_ARGUMENT_SCROLL_AMOUNT_FLOAT` <br /> Argument to represent the scroll amount as a percent of the visible area of a node, with 1.0F as the default. |
| `https://developer.android.com/reference/java/lang/String` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_ARGUMENT_SELECTION_END_INT` Argument for specifying the selection end. |
| `https://developer.android.com/reference/java/lang/String` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_ARGUMENT_SELECTION_PARCELABLE` Argument for specifying the extended selection. |
| `https://developer.android.com/reference/java/lang/String` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_ARGUMENT_SELECTION_START_INT` Argument for specifying the selection start. |
| `https://developer.android.com/reference/java/lang/String` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_ARGUMENT_SET_TEXT_CHARSEQUENCE` Argument for specifying the text content to set. |
| `int` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_CLEAR_ACCESSIBILITY_FOCUS` Action that clears accessibility focus of the node. |
| `int` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_CLEAR_FOCUS` Action that clears input focus of the node. |
| `int` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_CLEAR_SELECTION` Action that deselects the node. |
| `int` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_CLICK` Action that clicks on the node info. |
| `int` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_COLLAPSE` Action to collapse an expandable node. |
| `int` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_COPY` Action to copy the current selection to the clipboard. |
| `int` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_CUT` Action to cut the current selection and place it to the clipboard. |
| `int` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_DISMISS` Action to dismiss a dismissable node. |
| `int` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_EXPAND` Action to expand an expandable node. |
| `int` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_FOCUS` Action that gives input focus to the node. |
| `int` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_LONG_CLICK` Action that long clicks on the node. |
| `int` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_NEXT_AT_MOVEMENT_GRANULARITY` Action that requests to go to the next entity in this node's text at a given movement granularity. |
| `int` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_NEXT_HTML_ELEMENT` Action to move to the next HTML element of a given type. |
| `int` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_PASTE` Action to paste the current clipboard content. |
| `int` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_PREVIOUS_AT_MOVEMENT_GRANULARITY` Action that requests to go to the previous entity in this node's text at a given movement granularity. |
| `int` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_PREVIOUS_HTML_ELEMENT` Action to move to the previous HTML element of a given type. |
| `int` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_SCROLL_BACKWARD` Action to scroll the node content backward. |
| `int` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_SCROLL_FORWARD` Action to scroll the node content forward. |
| `int` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_SELECT` Action that selects the node. |
| `int` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_SET_SELECTION` Action to set the selection. |
| `int` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_SET_TEXT` Action that sets the text of the node. |
| `int` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#CHECKED_STATE_FALSE` This node is not checked. |
| `int` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#CHECKED_STATE_PARTIAL` This node is partially checked. |
| `int` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#CHECKED_STATE_TRUE` This node is checked. |
| `int` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#EXPANDED_STATE_COLLAPSED` Expanded state for a collapsed expandable element. |
| `int` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#EXPANDED_STATE_FULL` Expanded state for a expanded expandable element that cannot be expanded further. |
| `int` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#EXPANDED_STATE_PARTIAL` Expanded state for an expanded expandable element that can still be expanded further. |
| `int` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#EXPANDED_STATE_UNDEFINED` Expanded state for a non-expandable element |
| `https://developer.android.com/reference/java/lang/String` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#EXTRA_DATA_RENDERING_INFO_KEY` Key used to request extra data for the rendering information. |
| `https://developer.android.com/reference/java/lang/String` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#EXTRA_DATA_REQUEST_LAYOUT_BASED_ACTIONS_KEY` Key used to request that the node source re-evaluate and update this node's layout-dependent actions. |
| `https://developer.android.com/reference/java/lang/String` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#EXTRA_DATA_TEXT_CHARACTER_LOCATION_ARG_LENGTH` Integer argument specifying the end index of the requested text location data. |
| `int` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#EXTRA_DATA_TEXT_CHARACTER_LOCATION_ARG_MAX_LENGTH` The maximum allowed length of the requested text location data. |
| `https://developer.android.com/reference/java/lang/String` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#EXTRA_DATA_TEXT_CHARACTER_LOCATION_ARG_START_INDEX` Integer argument specifying the start index of the requested text location data. |
| `https://developer.android.com/reference/java/lang/String` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#EXTRA_DATA_TEXT_CHARACTER_LOCATION_IN_WINDOW_KEY` Key used to request and locate extra data for text character location in window coordinates. |
| `https://developer.android.com/reference/java/lang/String` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#EXTRA_DATA_TEXT_CHARACTER_LOCATION_KEY` Key used to request and locate extra data for text character location. |
| `int` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#FLAG_PREFETCH_ANCESTORS` Prefetching strategy that prefetches the ancestors of the requested node. |
| `int` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#FLAG_PREFETCH_DESCENDANTS_BREADTH_FIRST` Prefetching strategy that prefetches the descendants of the requested node breadth-first. |
| `int` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#FLAG_PREFETCH_DESCENDANTS_DEPTH_FIRST` Prefetching strategy that prefetches the descendants of the requested node depth-first. |
| `int` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#FLAG_PREFETCH_DESCENDANTS_HYBRID` Prefetching strategy that prefetches the descendants in a hybrid depth first and breadth first approach. |
| `int` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#FLAG_PREFETCH_SIBLINGS` Prefetching strategy that prefetches the siblings of the requested node. |
| `int` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#FLAG_PREFETCH_UNINTERRUPTIBLE` Prefetching flag that specifies prefetching should not be interrupted by a request to retrieve a node or perform an action on a node. |
| `int` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#FOCUS_ACCESSIBILITY` The accessibility focus. |
| `int` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#FOCUS_INPUT` The input focus. |
| `int` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#MAX_NUMBER_OF_PREFETCHED_NODES` Maximum batch size of prefetched nodes for a request. |
| `int` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#MOVEMENT_GRANULARITY_CHARACTER` Movement granularity bit for traversing the text of a node by character. |
| `int` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#MOVEMENT_GRANULARITY_LINE` Movement granularity bit for traversing the text of a node by line. |
| `int` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#MOVEMENT_GRANULARITY_PAGE` Movement granularity bit for traversing the text of a node by page. |
| `int` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#MOVEMENT_GRANULARITY_PARAGRAPH` Movement granularity bit for traversing the text of a node by paragraph. |
| `int` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#MOVEMENT_GRANULARITY_WORD` Movement granularity bit for traversing the text of a node by word. |

| ### Inherited constants |
|---|
| From interface `https://developer.android.com/reference/android/os/Parcelable` |---|---| | `int` | `https://developer.android.com/reference/android/os/Parcelable#CONTENTS_FILE_DESCRIPTOR` Descriptor bit used with `https://developer.android.com/reference/android/os/Parcelable#describeContents()`: indicates that the Parcelable object's flattened representation includes a file descriptor. | | `int` | `https://developer.android.com/reference/android/os/Parcelable#PARCELABLE_WRITE_RETURN_VALUE` Flag for use with `https://developer.android.com/reference/android/os/Parcelable#writeToParcel(android.os.Parcel,%20int)`: the object being written is a return value, that is the result of a function such as "`Parcelable someFunction()`", "`void someFunction(out Parcelable)`", or "`void someFunction(inout Parcelable)`". | |

| ### Fields ||
|---|---|
| ` public static final https://developer.android.com/reference/android/os/Parcelable.Creator<https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo>` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#CREATOR` |

| ### Public constructors ||
|---|---|
| ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#AccessibilityNodeInfo()() ` Creates a new `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo`. |
| ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#AccessibilityNodeInfo(android.view.accessibility.AccessibilityNodeInfo)(https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo info) ` Copy constructor. |
| ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#AccessibilityNodeInfo(android.view.View)(https://developer.android.com/reference/android/view/View source) ` Creates a new `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo` with the given `source`. |
| ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#AccessibilityNodeInfo(android.view.View,%20int)(https://developer.android.com/reference/android/view/View root, int virtualDescendantId) ` Creates a new `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo` with the given `source`. |

| ### Public methods ||
|---|---|
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#addAction(int)(int action) ` *This method was deprecated in API level 21. This has been deprecated for `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#addAction(android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction)`* |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#addAction(android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction)(https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction action) ` Adds an action that can be performed on the node. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#addChild(android.view.View,%20int)(https://developer.android.com/reference/android/view/View root, int virtualDescendantId) ` Adds a virtual child which is a descendant of the given `root`. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#addChild(android.view.View)(https://developer.android.com/reference/android/view/View child) ` Adds a child. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#addLabeledBy(android.view.View)(https://developer.android.com/reference/android/view/View label) ` Adds the view which serves as the label of the view represented by this info for accessibility purposes. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#addLabeledBy(android.view.View,%20int)(https://developer.android.com/reference/android/view/View root, int virtualDescendantId) ` Adds the view which serves as the label of the view represented by this info for accessibility purposes. |
| ` boolean` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#canOpenPopup()() ` Gets if this node opens a popup or a dialog. |
| ` int` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#describeContents()() ` Describe the kinds of special objects contained in this Parcelable instance's marshaled representation. |
| ` boolean` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#equals(java.lang.Object)(https://developer.android.com/reference/java/lang/Object object) ` Indicates whether some other object is "equal to" this one. |
| ` https://developer.android.com/reference/java/util/List<https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo>` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#findAccessibilityNodeInfosByText(java.lang.String)(https://developer.android.com/reference/java/lang/String text) ` Finds `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo`s by text. |
| ` https://developer.android.com/reference/java/util/List<https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo>` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#findAccessibilityNodeInfosByViewId(java.lang.String)(https://developer.android.com/reference/java/lang/String viewId) ` Finds `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo`s by the fully qualified view id's resource name where a fully qualified id is of the from "package:id/id_resource_name". |
| ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#findFocus(int)(int focus) ` Find the view that has the specified focus type. |
| ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#focusSearch(int)(int direction) ` Searches for the nearest view in the specified direction that can take the input focus. |
| ` https://developer.android.com/reference/java/util/List<https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction>` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getActionList()() ` Gets the actions that can be performed on the node. |
| ` int` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getActions()() ` *This method was deprecated in API level 21. Use `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getActionList()`.* |
| ` https://developer.android.com/reference/java/util/List<https://developer.android.com/reference/java/lang/String>` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getAvailableExtraData()() ` Get the extra data available for this node. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getBoundsInParent(android.graphics.Rect)(https://developer.android.com/reference/android/graphics/Rect outBounds) ` *This method was deprecated in API level 29. Use `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getBoundsInScreen(android.graphics.Rect)` instead.* |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getBoundsInScreen(android.graphics.Rect)(https://developer.android.com/reference/android/graphics/Rect outBounds) ` Gets the node bounds in screen coordinates. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getBoundsInWindow(android.graphics.Rect)(https://developer.android.com/reference/android/graphics/Rect outBounds) ` Gets the node bounds in window coordinates. |
| ` int` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getChecked()() ` Gets the checked state of this node. |
| ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getChild(int)(int index) ` Get the child at given index. |
| ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getChild(int,%20int)(int index, int prefetchingStrategy) ` Get the child at given index. |
| ` int` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getChildCount()() ` Gets the number of children. |
| ` https://developer.android.com/reference/java/lang/CharSequence` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getClassName()() ` Gets the class this node comes from. |
| ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.CollectionInfo` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getCollectionInfo()() ` Gets the collection info if the node is a collection. |
| ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.CollectionItemInfo` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getCollectionItemInfo()() ` Gets the collection item info if the node is a collection item. |
| ` https://developer.android.com/reference/java/lang/CharSequence` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getContainerTitle()() ` Returns the container title. |
| ` https://developer.android.com/reference/java/lang/CharSequence` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getContentDescription()() ` Gets the content description of this node. |
| ` int` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getDrawingOrder()() ` Get the drawing order of the view corresponding it this node. |
| ` https://developer.android.com/reference/java/lang/CharSequence` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getError()() ` Gets the error text of this node. |
| ` int` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getExpandedState()() ` Gets the expanded state for this node. |
| ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.ExtraRenderingInfo` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getExtraRenderingInfo()() ` Gets the `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.ExtraRenderingInfo` if the node is meant to be refreshed with extra data to examine rendering related accessibility issues. |
| ` https://developer.android.com/reference/android/os/Bundle` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getExtras()() ` Gets an optional bundle with extra data. |
| ` https://developer.android.com/reference/java/lang/CharSequence` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getHintText()() ` Gets the hint text of this node. |
| ` int` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getInputType()() ` Gets the input type of the source as defined by `https://developer.android.com/reference/android/text/InputType`. |
| ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getLabelFor()() ` *This method was deprecated in API level 36. Use `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getLabeledByList()` on the labeled node instead, since calling `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#addLabeledBy(android.view.View)` or `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#addLabeledBy(android.view.View,%20int)` on the labeled node do not automatically provide that node from this method.* |
| ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getLabeledBy()() ` *This method was deprecated in API level 36. Use `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getLabeledByList()` instead.* |
| ` https://developer.android.com/reference/java/util/List<https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo>` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getLabeledByList()() ` Gets the list of node infos which serve as the labels of the view represented by this info for accessibility purposes. |
| ` int` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getLiveRegion()() ` Gets the node's live region mode. |
| ` int` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getMaxTextLength()() ` Returns the maximum text length for this node. |
| ` https://developer.android.com/reference/java/time/Duration` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getMinDurationBetweenContentChanges()() ` Gets the minimum time duration between two content change events. |
| ` int` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getMovementGranularities()() ` Gets the movement granularities for traversing the text of this node. |
| ` https://developer.android.com/reference/java/lang/CharSequence` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getPackageName()() ` Gets the package this node comes from. |
| ` https://developer.android.com/reference/java/lang/CharSequence` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getPaneTitle()() ` Get the title of the pane represented by this node. |
| ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getParent()() ` Gets the parent. |
| ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getParent(int)(int prefetchingStrategy) ` Gets the parent. |
| ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.RangeInfo` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getRangeInfo()() ` Gets the range info if this node is a range. |
| ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.Selection` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getSelection()() ` Gets the extended selection, which is a representation of selection that spans multiple nodes that exist within the subtree of the node defining selection. |
| ` https://developer.android.com/reference/java/lang/CharSequence` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getStateDescription()() ` Get the state description of this node. |
| ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.StructuredDataInfo` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getStructuredDataInfo()() ` Gets additional structured data properties of this node. |
| ` https://developer.android.com/reference/java/lang/CharSequence` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getSupplementalDescription()() ` Gets the supplemental description of this node. |
| ` https://developer.android.com/reference/java/lang/CharSequence` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getText()() ` Gets the text of this node. |
| ` int` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getTextSelectionEnd()() ` Gets the text selection end if text is selected. |
| ` int` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getTextSelectionStart()() ` Gets the text selection start or the cursor position. |
| ` https://developer.android.com/reference/java/lang/CharSequence` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getTooltipText()() ` Gets the tooltip text of this node. |
| ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.TouchDelegateInfo` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getTouchDelegateInfo()() ` Get the `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.TouchDelegateInfo` for touch delegate behavior with the represented view. |
| ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getTraversalAfter()() ` Gets the node after which this one is visited in accessibility traversal. |
| ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getTraversalBefore()() ` Gets the node before which this one is visited during traversal. |
| ` https://developer.android.com/reference/java/lang/String` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getUniqueId()() ` Gets the unique id of the node. |
| ` https://developer.android.com/reference/java/lang/String` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getViewIdResourceName()() ` Gets the fully qualified resource name of the source view's id. |
| ` https://developer.android.com/reference/android/view/accessibility/AccessibilityWindowInfo` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getWindow()() ` Gets the window to which this node belongs. |
| ` int` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getWindowId()() ` Returns the id of the window that created this node. |
| ` boolean` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#hasRequestInitialAccessibilityFocus()() ` Gets whether the node has `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setRequestInitialAccessibilityFocus(boolean)`. |
| ` int` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#hashCode()() ` Returns a hash code value for the object. |
| ` boolean` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#isAccessibilityDataSensitive()() ` Gets if the node's accessibility data is considered sensitive. |
| ` boolean` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#isAccessibilityFocused()() ` Gets whether this node is accessibility focused. |
| ` boolean` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#isCheckable()() ` Gets whether this node is checkable. |
| ` boolean` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#isChecked()() ` *This method was deprecated in API level 36. Use `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getChecked()` instead.* |
| ` boolean` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#isClickable()() ` Gets whether this node is clickable. |
| ` boolean` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#isContentInvalid()() ` Gets if the content of this node is invalid. |
| ` boolean` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#isContextClickable()() ` Gets whether this node is context clickable. |
| ` boolean` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#isDismissable()() ` Gets if the node can be dismissed. |
| ` boolean` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#isEditable()() ` Gets if the node is editable. |
| ` boolean` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#isEnabled()() ` Gets whether this node is enabled. |
| ` boolean` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#isFieldRequired()() ` Gets whether a node representing a form field requires input or selection. |
| ` boolean` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#isFocusable()() ` Gets whether this node is focusable. |
| ` boolean` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#isFocused()() ` Gets whether this node is focused. |
| ` boolean` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#isGranularScrollingSupported()() ` Gets if the node supports granular scrolling. |
| ` boolean` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#isHeading()() ` Returns whether node represents a heading. |
| ` boolean` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#isImportantForAccessibility()() ` Returns whether the node originates from a view considered important for accessibility. |
| ` boolean` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#isLongClickable()() ` Gets whether this node is long clickable. |
| ` boolean` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#isMultiLine()() ` Gets if the node is a multi line editable text. |
| ` boolean` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#isPassword()() ` Gets whether this node is a password. |
| ` boolean` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#isScreenReaderFocusable()() ` Returns whether the node is explicitly marked as a focusable unit by a screen reader. |
| ` boolean` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#isScrollable()() ` Gets if the node is scrollable. |
| ` boolean` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#isSelected()() ` Gets whether this node is selected. |
| ` boolean` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#isShowingHintText()() ` Returns whether the node's text represents a hint for the user to enter text. |
| ` boolean` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#isTextEntryKey()() ` Returns whether node represents a text entry key that is part of a keyboard or keypad. |
| ` boolean` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#isTextSelectable()() ` Gets if the node has selectable text. |
| ` boolean` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#isVisibleToUser()() ` Gets whether this node is visible to the user. |
| ` static https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#obtain(android.view.View,%20int)(https://developer.android.com/reference/android/view/View root, int virtualDescendantId) ` *This method was deprecated in API level 33. Object pooling has been discontinued. Create a new instance using the constructor `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#AccessibilityNodeInfo(android.view.View,%20int)` instead.* |
| ` static https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#obtain(android.view.accessibility.AccessibilityNodeInfo)(https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo info) ` *This method was deprecated in API level 33. Object pooling has been discontinued. Create a new instance using the constructor `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#AccessibilityNodeInfo(android.view.accessibility.AccessibilityNodeInfo)` instead.* |
| ` static https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#obtain()() ` *This method was deprecated in API level 33. Object pooling has been discontinued. Create a new instance using the constructor `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#AccessibilityNodeInfo()` instead.* |
| ` static https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#obtain(android.view.View)(https://developer.android.com/reference/android/view/View source) ` *This method was deprecated in API level 33. Object pooling has been discontinued. Create a new instance using the constructor `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#AccessibilityNodeInfo(android.view.View)` instead.* |
| ` boolean` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#performAction(int,%20android.os.Bundle)(int action, https://developer.android.com/reference/android/os/Bundle arguments) ` Performs an action on the node. |
| ` boolean` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#performAction(int)(int action) ` Performs an action on the node. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#recycle()() ` *This method was deprecated in API level 33. Object pooling has been discontinued. Calling this function now will have no effect.* |
| ` boolean` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#refresh()() ` Refreshes this info with the latest state of the view it represents. |
| ` boolean` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#refreshWithExtraData(java.lang.String,%20android.os.Bundle)(https://developer.android.com/reference/java/lang/String extraDataKey, https://developer.android.com/reference/android/os/Bundle args) ` Refreshes this info with the latest state of the view it represents, and request new data be added by the View. |
| ` boolean` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#removeAction(android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction)(https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction action) ` Removes an action that can be performed on the node. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#removeAction(int)(int action) ` *This method was deprecated in API level 21. Use `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#removeAction(android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction)`* |
| ` boolean` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#removeChild(android.view.View,%20int)(https://developer.android.com/reference/android/view/View root, int virtualDescendantId) ` Removes a virtual child which is a descendant of the given `root`. |
| ` boolean` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#removeChild(android.view.View)(https://developer.android.com/reference/android/view/View child) ` Removes a child. |
| ` boolean` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#removeLabeledBy(android.view.View,%20int)(https://developer.android.com/reference/android/view/View root, int virtualDescendantId) ` Removes a label which is a virtual descendant of the given `root`. |
| ` boolean` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#removeLabeledBy(android.view.View)(https://developer.android.com/reference/android/view/View label) ` Removes a label. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setAccessibilityDataSensitive(boolean)(boolean accessibilityDataSensitive) ` Sets whether this node's accessibility data is considered sensitive. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setAccessibilityFocused(boolean)(boolean focused) ` Sets whether this node is accessibility focused. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setAvailableExtraData(java.util.List<java.lang.String>)(https://developer.android.com/reference/java/util/List<https://developer.android.com/reference/java/lang/String> extraDataKeys) ` Set the extra data available for this node. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setBoundsInParent(android.graphics.Rect)(https://developer.android.com/reference/android/graphics/Rect bounds) ` *This method was deprecated in API level 29. Accessibility services should not care about these bounds.* |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setBoundsInScreen(android.graphics.Rect)(https://developer.android.com/reference/android/graphics/Rect bounds) ` Sets the node bounds in screen coordinates. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setBoundsInWindow(android.graphics.Rect)(https://developer.android.com/reference/android/graphics/Rect bounds) ` Sets the node bounds in window coordinates. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setCanOpenPopup(boolean)(boolean opensPopup) ` Sets if this node opens a popup or a dialog. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setCheckable(boolean)(boolean checkable) ` Sets whether this node is checkable. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setChecked(boolean)(boolean checked) ` *This method was deprecated in API level 36. Use `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setChecked(int)` instead.* |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setChecked(int)(int checked) ` Sets the checked state of this node. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setClassName(java.lang.CharSequence)(https://developer.android.com/reference/java/lang/CharSequence className) ` Sets the class this node comes from. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setClickable(boolean)(boolean clickable) ` Sets whether this node is clickable. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setCollectionInfo(android.view.accessibility.AccessibilityNodeInfo.CollectionInfo)(https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.CollectionInfo collectionInfo) ` Sets the collection info if the node is a collection. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setCollectionItemInfo(android.view.accessibility.AccessibilityNodeInfo.CollectionItemInfo)(https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.CollectionItemInfo collectionItemInfo) ` Sets the collection item info if the node is a collection item. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setContainerTitle(java.lang.CharSequence)(https://developer.android.com/reference/java/lang/CharSequence containerTitle) ` Sets the container title for app-developer-defined container which can be any type of ViewGroup or layout. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setContentDescription(java.lang.CharSequence)(https://developer.android.com/reference/java/lang/CharSequence contentDescription) ` Sets the content description of this node. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setContentInvalid(boolean)(boolean contentInvalid) ` Sets if the content of this node is invalid. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setContextClickable(boolean)(boolean contextClickable) ` Sets whether this node is context clickable. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setDismissable(boolean)(boolean dismissable) ` Sets if the node can be dismissed. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setDrawingOrder(int)(int drawingOrderInParent) ` Set the drawing order of the view corresponding it this node. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setEditable(boolean)(boolean editable) ` Sets whether this node is editable. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setEnabled(boolean)(boolean enabled) ` Sets whether this node is enabled. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setError(java.lang.CharSequence)(https://developer.android.com/reference/java/lang/CharSequence error) ` Sets the error text of this node. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setExpandedState(int)(int state) ` Sets the expanded state of the node. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setExtraRenderingInfo(android.view.accessibility.AccessibilityNodeInfo.ExtraRenderingInfo)(https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.ExtraRenderingInfo extraRenderingInfo) ` Sets the extra rendering info, `` extraRenderingInfo`, if the node is meant to be refreshed with extra data. ` `` `` ` ` `` |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setFieldRequired(boolean)(boolean required) ` Sets whether `this` node represents a form field that requires input or selection. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setFocusable(boolean)(boolean focusable) ` Sets whether this node is focusable. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setFocused(boolean)(boolean focused) ` Sets whether this node is focused. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setGranularScrollingSupported(boolean)(boolean granularScrollingSupported) ` Sets if the node supports granular scrolling. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setHeading(boolean)(boolean isHeading) ` Sets whether the node represents a heading. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setHintText(java.lang.CharSequence)(https://developer.android.com/reference/java/lang/CharSequence hintText) ` Sets the hint text of this node. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setImportantForAccessibility(boolean)(boolean important) ` Sets whether the node is considered important for accessibility. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setInputType(int)(int inputType) ` Sets the input type of the source as defined by `https://developer.android.com/reference/android/text/InputType`. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setLabelFor(android.view.View,%20int)(https://developer.android.com/reference/android/view/View root, int virtualDescendantId) ` *This method was deprecated in API level 36. Use `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#addLabeledBy(android.view.View)` on the labeled node instead, since `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getLabeledByList()` and `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getLabeledBy()` on the labeled node are not automatically populated when this method is used.* |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setLabelFor(android.view.View)(https://developer.android.com/reference/android/view/View labeled) ` *This method was deprecated in API level 36. Use `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#addLabeledBy(android.view.View)` on the labeled node instead, since `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getLabeledByList()` and `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getLabeledBy()` on the labeled node are not automatically populated when this method is used.* |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setLabeledBy(android.view.View)(https://developer.android.com/reference/android/view/View label) ` *This method was deprecated in API level 36. Use `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#addLabeledBy(android.view.View)` or `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#removeLabeledBy(android.view.View)` instead.* |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setLabeledBy(android.view.View,%20int)(https://developer.android.com/reference/android/view/View root, int virtualDescendantId) ` *This method was deprecated in API level 36. Use `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#addLabeledBy(android.view.View,%20int)` or `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#removeLabeledBy(android.view.View,%20int)` instead.* |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setLiveRegion(int)(int mode) ` Sets the node's live region mode. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setLongClickable(boolean)(boolean longClickable) ` Sets whether this node is long clickable. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setMaxTextLength(int)(int max) ` Sets the maximum text length, or -1 for no limit. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setMinDurationBetweenContentChanges(java.time.Duration)(https://developer.android.com/reference/java/time/Duration duration) ` Sets the minimum time duration between two content change events, which is used in throttling content change events in accessibility services. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setMovementGranularities(int)(int granularities) ` Sets the movement granularities for traversing the text of this node. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setMultiLine(boolean)(boolean multiLine) ` Sets if the node is a multi line editable text. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setPackageName(java.lang.CharSequence)(https://developer.android.com/reference/java/lang/CharSequence packageName) ` Sets the package this node comes from. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setPaneTitle(java.lang.CharSequence)(https://developer.android.com/reference/java/lang/CharSequence paneTitle) ` If this node represents a visually distinct region of the screen that may update separately from the rest of the window, it is considered a pane. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setParent(android.view.View,%20int)(https://developer.android.com/reference/android/view/View root, int virtualDescendantId) ` Sets the parent to be a virtual descendant of the given `root`. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setParent(android.view.View)(https://developer.android.com/reference/android/view/View parent) ` Sets the parent. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setPassword(boolean)(boolean password) ` Sets whether this node is a password. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setQueryFromAppProcessEnabled(android.view.View,%20boolean)(https://developer.android.com/reference/android/view/View view, boolean enabled) ` Connects this node to the View's root so that operations on this node can query the entire `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo` tree and perform accessibility actions on nodes. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setRangeInfo(android.view.accessibility.AccessibilityNodeInfo.RangeInfo)(https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.RangeInfo rangeInfo) ` Sets the range info if this node is a range. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setRequestInitialAccessibilityFocus(boolean)(boolean requestInitialAccessibilityFocus) ` Sets whether the node has requested initial accessibility focus. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setScreenReaderFocusable(boolean)(boolean screenReaderFocusable) ` Sets whether the node should be considered a focusable unit by a screen reader. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setScrollable(boolean)(boolean scrollable) ` Sets if the node is scrollable. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setSelected(boolean)(boolean selected) ` Sets whether this node is selected. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setSelection(android.view.accessibility.AccessibilityNodeInfo.Selection)(https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.Selection selection) ` Sets the extended selection, which is a representation of selection that spans multiple nodes that exist within the subtree of the node defining selection. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setShowingHintText(boolean)(boolean showingHintText) ` Sets whether the node's text represents a hint for the user to enter text. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setSource(android.view.View)(https://developer.android.com/reference/android/view/View source) ` Sets the source. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setSource(android.view.View,%20int)(https://developer.android.com/reference/android/view/View root, int virtualDescendantId) ` Sets the source to be a virtual descendant of the given `root`. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setStateDescription(java.lang.CharSequence)(https://developer.android.com/reference/java/lang/CharSequence stateDescription) ` Sets the state description of this node. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setStructuredDataInfo(android.view.accessibility.AccessibilityNodeInfo.StructuredDataInfo)(https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.StructuredDataInfo info) ` Sets additional structured data properties of this node, such as for a mathematical expression. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setSupplementalDescription(java.lang.CharSequence)(https://developer.android.com/reference/java/lang/CharSequence supplementalDescription) ` Sets the supplemental description of this node. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setText(java.lang.CharSequence)(https://developer.android.com/reference/java/lang/CharSequence text) ` Sets the text of this node. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setTextEntryKey(boolean)(boolean isTextEntryKey) ` Sets whether the node represents a text entry key that is part of a keyboard or keypad. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setTextSelectable(boolean)(boolean selectableText) ` Sets if the node has selectable text. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setTextSelection(int,%20int)(int start, int end) ` Sets the text selection start and end. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setTooltipText(java.lang.CharSequence)(https://developer.android.com/reference/java/lang/CharSequence tooltipText) ` Sets the tooltip text of this node. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setTouchDelegateInfo(android.view.accessibility.AccessibilityNodeInfo.TouchDelegateInfo)(https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.TouchDelegateInfo delegatedInfo) ` Set touch delegate info if the represented view has a `https://developer.android.com/reference/android/view/TouchDelegate`. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setTraversalAfter(android.view.View)(https://developer.android.com/reference/android/view/View view) ` Sets the view whose node is visited after this one in accessibility traversal. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setTraversalAfter(android.view.View,%20int)(https://developer.android.com/reference/android/view/View root, int virtualDescendantId) ` Sets the node after which this one is visited in accessibility traversal. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setTraversalBefore(android.view.View)(https://developer.android.com/reference/android/view/View view) ` Sets the view before whose node this one should be visited during traversal. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setTraversalBefore(android.view.View,%20int)(https://developer.android.com/reference/android/view/View root, int virtualDescendantId) ` Sets the node before which this one is visited during traversal. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setUniqueId(java.lang.String)(https://developer.android.com/reference/java/lang/String uniqueId) ` Sets the unique id to act as a key to identify the node. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setViewIdResourceName(java.lang.String)(https://developer.android.com/reference/java/lang/String viewIdResName) ` Sets the fully qualified resource name of the source view's id. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setVisibleToUser(boolean)(boolean visibleToUser) ` Sets whether this node is visible to the user. |
| ` https://developer.android.com/reference/java/lang/String` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#toString()() ` Returns a string representation of the object. |
| ` void` | ` https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#writeToParcel(android.os.Parcel,%20int)(https://developer.android.com/reference/android/os/Parcel parcel, int flags) ` Flatten this object in to a Parcel. **Note:** After the instance is written to a parcel it is recycled. |

| ### Inherited methods |
|---|---|
| From class ` https://developer.android.com/reference/java/lang/Object ` |---|---| | ` https://developer.android.com/reference/java/lang/Object` | ` https://developer.android.com/reference/java/lang/Object#clone()() ` Creates and returns a copy of this object. | | ` boolean` | ` https://developer.android.com/reference/java/lang/Object#equals(java.lang.Object)(https://developer.android.com/reference/java/lang/Object obj) ` Indicates whether some other object is "equal to" this one. | | ` void` | ` https://developer.android.com/reference/java/lang/Object#finalize()() ` Called by the garbage collector on an object when garbage collection determines that there are no more references to the object. | | ` final https://developer.android.com/reference/java/lang/Class<?>` | ` https://developer.android.com/reference/java/lang/Object#getClass()() ` Returns the runtime class of this `Object`. | | ` int` | ` https://developer.android.com/reference/java/lang/Object#hashCode()() ` Returns a hash code value for the object. | | ` final void` | ` https://developer.android.com/reference/java/lang/Object#notify()() ` Wakes up a single thread that is waiting on this object's monitor. | | ` final void` | ` https://developer.android.com/reference/java/lang/Object#notifyAll()() ` Wakes up all threads that are waiting on this object's monitor. | | ` https://developer.android.com/reference/java/lang/String` | ` https://developer.android.com/reference/java/lang/Object#toString()() ` Returns a string representation of the object. | | ` final void` | ` https://developer.android.com/reference/java/lang/Object#wait(long,%20int)(long timeoutMillis, int nanos) ` Causes the current thread to wait until it is awakened, typically by being *notified* or *interrupted*, or until a certain amount of real time has elapsed. | | ` final void` | ` https://developer.android.com/reference/java/lang/Object#wait(long)(long timeoutMillis) ` Causes the current thread to wait until it is awakened, typically by being *notified* or *interrupted*, or until a certain amount of real time has elapsed. | | ` final void` | ` https://developer.android.com/reference/java/lang/Object#wait()() ` Causes the current thread to wait until it is awakened, typically by being *notified* or *interrupted*. | ||
| From interface ` https://developer.android.com/reference/android/os/Parcelable ` |---|---| | ` abstract int` | ` https://developer.android.com/reference/android/os/Parcelable#describeContents()() ` Describe the kinds of special objects contained in this Parcelable instance's marshaled representation. | | ` abstract void` | ` https://developer.android.com/reference/android/os/Parcelable#writeToParcel(android.os.Parcel,%20int)(https://developer.android.com/reference/android/os/Parcel dest, int flags) ` Flatten this object in to a Parcel. | ||

## Constants

### ACTION_ACCESSIBILITY_FOCUS

Added in [API level 16](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int ACTION_ACCESSIBILITY_FOCUS
```

Action that gives accessibility focus to the node.
See `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_ACCESSIBILITY_FOCUS`

<br />

Constant Value:

64
(0x00000040)


### ACTION_ARGUMENT_COLUMN_INT

Added in [API level 23](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final String ACTION_ARGUMENT_COLUMN_INT
```

Argument for specifying the collection column to make visible on screen.


**Type:** int  

**Actions:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_SCROLL_TO_POSITION`

<br />

<br />

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_SCROLL_TO_POSITION`

Constant Value:

"android.view.accessibility.action.ARGUMENT_COLUMN_INT"


### ACTION_ARGUMENT_DIRECTION_INT

Added in [API level 34](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final String ACTION_ARGUMENT_DIRECTION_INT
```

<br />

Argument to represent the direction when using
`https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_SCROLL_IN_DIRECTION`.


The value of this argument can be one of:

- `https://developer.android.com/reference/android/view/View#FOCUS_DOWN`
- `https://developer.android.com/reference/android/view/View#FOCUS_UP`
- `https://developer.android.com/reference/android/view/View#FOCUS_LEFT`
- `https://developer.android.com/reference/android/view/View#FOCUS_RIGHT`
- `https://developer.android.com/reference/android/view/View#FOCUS_FORWARD`
- `https://developer.android.com/reference/android/view/View#FOCUS_BACKWARD`

<br />

<br />

<br />

Constant Value:

"android.view.accessibility.action.ARGUMENT_DIRECTION_INT"


### ACTION_ARGUMENT_EXTEND_SELECTION_BOOLEAN

Added in [API level 18](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final String ACTION_ARGUMENT_EXTEND_SELECTION_BOOLEAN
```

Argument for whether when moving at granularity to extend the selection
or to move it otherwise.


**Type:** boolean  

**Actions:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_NEXT_AT_MOVEMENT_GRANULARITY`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_PREVIOUS_AT_MOVEMENT_GRANULARITY`

<br />

<br />

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_NEXT_AT_MOVEMENT_GRANULARITY`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_PREVIOUS_AT_MOVEMENT_GRANULARITY`

Constant Value:

"ACTION_ARGUMENT_EXTEND_SELECTION_BOOLEAN"


### ACTION_ARGUMENT_HTML_ELEMENT_STRING

Added in [API level 16](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final String ACTION_ARGUMENT_HTML_ELEMENT_STRING
```

Argument for which HTML element to get moving to the next/previous HTML element.


**Type:** String  

**Actions:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_NEXT_HTML_ELEMENT`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_PREVIOUS_HTML_ELEMENT`

<br />

<br />

<br />

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_NEXT_HTML_ELEMENT`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_PREVIOUS_HTML_ELEMENT`

Constant Value:

"ACTION_ARGUMENT_HTML_ELEMENT_STRING"


### ACTION_ARGUMENT_MOVEMENT_GRANULARITY_INT

Added in [API level 16](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final String ACTION_ARGUMENT_MOVEMENT_GRANULARITY_INT
```

Argument for which movement granularity to be used when traversing the node text.


**Type:** int  

**Actions:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_NEXT_AT_MOVEMENT_GRANULARITY`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_PREVIOUS_AT_MOVEMENT_GRANULARITY`

<br />

<br />

<br />

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_NEXT_AT_MOVEMENT_GRANULARITY`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_PREVIOUS_AT_MOVEMENT_GRANULARITY`

Constant Value:

"ACTION_ARGUMENT_MOVEMENT_GRANULARITY_INT"


### ACTION_ARGUMENT_MOVE_WINDOW_X

Added in [API level 26](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final String ACTION_ARGUMENT_MOVE_WINDOW_X
```

Argument for specifying the x coordinate to which to move a window.


**Type:** int  

**Actions:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_MOVE_WINDOW`

<br />

<br />

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_MOVE_WINDOW`

Constant Value:

"ACTION_ARGUMENT_MOVE_WINDOW_X"


### ACTION_ARGUMENT_MOVE_WINDOW_Y

Added in [API level 26](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final String ACTION_ARGUMENT_MOVE_WINDOW_Y
```

Argument for specifying the y coordinate to which to move a window.


**Type:** int  

**Actions:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_MOVE_WINDOW`

<br />

<br />

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_MOVE_WINDOW`

Constant Value:

"ACTION_ARGUMENT_MOVE_WINDOW_Y"


### ACTION_ARGUMENT_PRESS_AND_HOLD_DURATION_MILLIS_INT

Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final String ACTION_ARGUMENT_PRESS_AND_HOLD_DURATION_MILLIS_INT
```

Argument to represent the duration in milliseconds to press and hold a node.


**Type:** int  

**Actions:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_PRESS_AND_HOLD`

<br />

<br />

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_PRESS_AND_HOLD`

Constant Value:

"android.view.accessibility.action.ARGUMENT_PRESS_AND_HOLD_DURATION_MILLIS_INT"


### ACTION_ARGUMENT_PROGRESS_VALUE

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final String ACTION_ARGUMENT_PROGRESS_VALUE
```

Argument for specifying the progress value to set.


**Type:** float  

**Actions:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_SET_PROGRESS`

<br />

<br />

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_SET_PROGRESS`

Constant Value:

"android.view.accessibility.action.ARGUMENT_PROGRESS_VALUE"


### ACTION_ARGUMENT_ROW_INT

Added in [API level 23](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final String ACTION_ARGUMENT_ROW_INT
```

Argument for specifying the collection row to make visible on screen.


**Type:** int  

**Actions:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_SCROLL_TO_POSITION`

<br />

<br />

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_SCROLL_TO_POSITION`

Constant Value:

"android.view.accessibility.action.ARGUMENT_ROW_INT"


### ACTION_ARGUMENT_SCROLL_AMOUNT_FLOAT

Added in [API level 35](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final String ACTION_ARGUMENT_SCROLL_AMOUNT_FLOAT
```

<br />

Argument to represent the scroll amount as a percent of the visible area of a node, with
1.0F as the default. Values smaller than 1.0F represent a partial scroll of the node, and
values larger than 1.0F represent a scroll that extends beyond the currently visible node
Rect. Setting this to `https://developer.android.com/reference/java/lang/Float#POSITIVE_INFINITY` or to another "too large" value should
scroll to the end of the node. Negative values should not be used with this argument.


This argument should be used with the following scroll actions:

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_SCROLL_FORWARD`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_SCROLL_BACKWARD`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_SCROLL_UP`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_SCROLL_DOWN`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_SCROLL_LEFT`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_SCROLL_RIGHT`

<br />


Example: if a view representing a list of items implements
`https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_SCROLL_FORWARD` to scroll forward by an entire screen
(one "page"), then passing a value of .25F via this argument should scroll that view
only by 1/4th of a screen. Passing a value of 1.50F via this argument should scroll the
view by 1 1/2 screens or to end of the node if the node doesn't extend to 1 1/2 screens.


This argument should not be used with the following scroll actions, which don't cleanly
conform to granular scroll semantics:

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_SCROLL_IN_DIRECTION`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_SCROLL_TO_POSITION`

<br />


Views that support this argument should set
`https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setGranularScrollingSupported(boolean)` to true. Clients should use
`https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#isGranularScrollingSupported()` to check if granular scrolling is supported.

<br />

<br />

Constant Value:

"android.view.accessibility.action.ARGUMENT_SCROLL_AMOUNT_FLOAT"


### ACTION_ARGUMENT_SELECTION_END_INT

Added in [API level 18](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final String ACTION_ARGUMENT_SELECTION_END_INT
```

Argument for specifying the selection end.


**Type:** int  

**Actions:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_SET_SELECTION`

<br />

<br />

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_SET_SELECTION`

Constant Value:

"ACTION_ARGUMENT_SELECTION_END_INT"


### ACTION_ARGUMENT_SELECTION_PARCELABLE

Added in [version 36.1](https://developer.android.com/topic/libraries/support-library/revisions)

```
public static final String ACTION_ARGUMENT_SELECTION_PARCELABLE
```

Argument for specifying the extended selection.

**Type:** `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.Selection`  

**Actions:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_SET_EXTENDED_SELECTION`

<br />

<br />

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_SET_EXTENDED_SELECTION`

Constant Value:

"android.view.accessibility.action.ARGUMENT_SELECTION_PARCELABLE"


### ACTION_ARGUMENT_SELECTION_START_INT

Added in [API level 18](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final String ACTION_ARGUMENT_SELECTION_START_INT
```

Argument for specifying the selection start.


**Type:** int  

**Actions:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_SET_SELECTION`

<br />

<br />

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_SET_SELECTION`

Constant Value:

"ACTION_ARGUMENT_SELECTION_START_INT"


### ACTION_ARGUMENT_SET_TEXT_CHARSEQUENCE

Added in [API level 21](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final String ACTION_ARGUMENT_SET_TEXT_CHARSEQUENCE
```

Argument for specifying the text content to set.


**Type:** CharSequence  

**Actions:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_SET_TEXT`

<br />

<br />

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_SET_TEXT`

Constant Value:

"ACTION_ARGUMENT_SET_TEXT_CHARSEQUENCE"


### ACTION_CLEAR_ACCESSIBILITY_FOCUS

Added in [API level 16](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int ACTION_CLEAR_ACCESSIBILITY_FOCUS
```

Action that clears accessibility focus of the node.
See `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_CLEAR_ACCESSIBILITY_FOCUS`

<br />

Constant Value:

128
(0x00000080)


### ACTION_CLEAR_FOCUS

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int ACTION_CLEAR_FOCUS
```

Action that clears input focus of the node.
See `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_CLEAR_FOCUS`

<br />

Constant Value:

2
(0x00000002)


### ACTION_CLEAR_SELECTION

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int ACTION_CLEAR_SELECTION
```

Action that deselects the node.

<br />

Constant Value:

8
(0x00000008)


### ACTION_CLICK

Added in [API level 16](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int ACTION_CLICK
```

Action that clicks on the node info.

<br />

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_CLICK`

Constant Value:

16
(0x00000010)


### ACTION_COLLAPSE

Added in [API level 19](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int ACTION_COLLAPSE
```

Action to collapse an expandable node.

<br />

Constant Value:

524288
(0x00080000)


### ACTION_COPY

Added in [API level 18](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int ACTION_COPY
```

Action to copy the current selection to the clipboard.

<br />

Constant Value:

16384
(0x00004000)


### ACTION_CUT

Added in [API level 18](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int ACTION_CUT
```

Action to cut the current selection and place it to the clipboard.

<br />

Constant Value:

65536
(0x00010000)


### ACTION_DISMISS

Added in [API level 19](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int ACTION_DISMISS
```

Action to dismiss a dismissable node.

<br />

Constant Value:

1048576
(0x00100000)


### ACTION_EXPAND

Added in [API level 19](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int ACTION_EXPAND
```

Action to expand an expandable node.

<br />

Constant Value:

262144
(0x00040000)


### ACTION_FOCUS

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int ACTION_FOCUS
```

Action that gives input focus to the node.
See `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_FOCUS`

<br />

Constant Value:

1
(0x00000001)


### ACTION_LONG_CLICK

Added in [API level 16](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int ACTION_LONG_CLICK
```

Action that long clicks on the node.

It does not support coordinate information for anchoring.

<br />

<br />

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_LONG_CLICK`

Constant Value:

32
(0x00000020)


### ACTION_NEXT_AT_MOVEMENT_GRANULARITY

Added in [API level 16](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int ACTION_NEXT_AT_MOVEMENT_GRANULARITY
```

Action that requests to go to the next entity in this node's text
at a given movement granularity. For example, move to the next character,
word, etc.


**Arguments:** `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_ARGUMENT_MOVEMENT_GRANULARITY_INT`\<,
`https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_ARGUMENT_EXTEND_SELECTION_BOOLEAN`  

**Example:** Move to the previous character and do not extend selection.

```
`
   Bundle arguments = new Bundle();
   arguments.putInt(AccessibilityNodeInfo.ACTION_ARGUMENT_MOVEMENT_GRANULARITY_INT,
           AccessibilityNodeInfo.MOVEMENT_GRANULARITY_CHARACTER);
   arguments.putBoolean(AccessibilityNodeInfo.ACTION_ARGUMENT_EXTEND_SELECTION_BOOLEAN,
           false);
   info.performAction(AccessibilityNodeInfo.ACTION_NEXT_AT_MOVEMENT_GRANULARITY, arguments);
 `
```

<br />

<br />

<br />

<br />

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_ARGUMENT_MOVEMENT_GRANULARITY_INT`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_ARGUMENT_EXTEND_SELECTION_BOOLEAN`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setMovementGranularities(int)`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getMovementGranularities()`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#MOVEMENT_GRANULARITY_CHARACTER`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#MOVEMENT_GRANULARITY_WORD`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#MOVEMENT_GRANULARITY_LINE`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#MOVEMENT_GRANULARITY_PARAGRAPH`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#MOVEMENT_GRANULARITY_PAGE`

Constant Value:

256
(0x00000100)


### ACTION_NEXT_HTML_ELEMENT

Added in [API level 16](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int ACTION_NEXT_HTML_ELEMENT
```

Action to move to the next HTML element of a given type. For example, move
to the BUTTON, INPUT, TABLE, etc.


**Arguments:** `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_ARGUMENT_HTML_ELEMENT_STRING`  

**Example:**

```
`
   Bundle arguments = new Bundle();
   arguments.putString(AccessibilityNodeInfo.ACTION_ARGUMENT_HTML_ELEMENT_STRING, "BUTTON");
   info.performAction(AccessibilityNodeInfo.ACTION_NEXT_HTML_ELEMENT, arguments);
 `
```

<br />

<br />

<br />

<br />

Constant Value:

1024
(0x00000400)


### ACTION_PASTE

Added in [API level 18](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int ACTION_PASTE
```

Action to paste the current clipboard content.

<br />

Constant Value:

32768
(0x00008000)


### ACTION_PREVIOUS_AT_MOVEMENT_GRANULARITY

Added in [API level 16](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int ACTION_PREVIOUS_AT_MOVEMENT_GRANULARITY
```

Action that requests to go to the previous entity in this node's text
at a given movement granularity. For example, move to the next character,
word, etc.


**Arguments:** `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_ARGUMENT_MOVEMENT_GRANULARITY_INT`\<,
`https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_ARGUMENT_EXTEND_SELECTION_BOOLEAN`  

**Example:** Move to the next character and do not extend selection.

```
`
   Bundle arguments = new Bundle();
   arguments.putInt(AccessibilityNodeInfo.ACTION_ARGUMENT_MOVEMENT_GRANULARITY_INT,
           AccessibilityNodeInfo.MOVEMENT_GRANULARITY_CHARACTER);
   arguments.putBoolean(AccessibilityNodeInfo.ACTION_ARGUMENT_EXTEND_SELECTION_BOOLEAN,
           false);
   info.performAction(AccessibilityNodeInfo.ACTION_PREVIOUS_AT_MOVEMENT_GRANULARITY,
           arguments);
 `
```

<br />

<br />

<br />

<br />

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_ARGUMENT_MOVEMENT_GRANULARITY_INT`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_ARGUMENT_EXTEND_SELECTION_BOOLEAN`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setMovementGranularities(int)`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getMovementGranularities()`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#MOVEMENT_GRANULARITY_CHARACTER`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#MOVEMENT_GRANULARITY_WORD`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#MOVEMENT_GRANULARITY_LINE`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#MOVEMENT_GRANULARITY_PARAGRAPH`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#MOVEMENT_GRANULARITY_PAGE`

Constant Value:

512
(0x00000200)


### ACTION_PREVIOUS_HTML_ELEMENT

Added in [API level 16](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int ACTION_PREVIOUS_HTML_ELEMENT
```

Action to move to the previous HTML element of a given type. For example, move
to the BUTTON, INPUT, TABLE, etc.


**Arguments:** `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_ARGUMENT_HTML_ELEMENT_STRING`  

**Example:**

```
`
   Bundle arguments = new Bundle();
   arguments.putString(AccessibilityNodeInfo.ACTION_ARGUMENT_HTML_ELEMENT_STRING, "BUTTON");
   info.performAction(AccessibilityNodeInfo.ACTION_PREVIOUS_HTML_ELEMENT, arguments);
 `
```

<br />

<br />

<br />

<br />

Constant Value:

2048
(0x00000800)


### ACTION_SCROLL_BACKWARD

Added in [API level 16](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int ACTION_SCROLL_BACKWARD
```

Action to scroll the node content backward.

<br />

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_SCROLL_BACKWARD`

Constant Value:

8192
(0x00002000)


### ACTION_SCROLL_FORWARD

Added in [API level 16](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int ACTION_SCROLL_FORWARD
```

Action to scroll the node content forward.

<br />

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_SCROLL_FORWARD`

Constant Value:

4096
(0x00001000)


### ACTION_SELECT

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int ACTION_SELECT
```

Action that selects the node.

<br />

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_SELECT`

Constant Value:

4
(0x00000004)


### ACTION_SET_SELECTION

Added in [API level 18](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int ACTION_SET_SELECTION
```

Action to set the selection. Performing this action with no arguments
clears the selection.

<br />

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_SET_SELECTION`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_ARGUMENT_SELECTION_START_INT`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_ARGUMENT_SELECTION_END_INT`

Constant Value:

131072
(0x00020000)


### ACTION_SET_TEXT

Added in [API level 21](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int ACTION_SET_TEXT
```

Action that sets the text of the node. Performing the action without argument, using `
null` or empty `https://developer.android.com/reference/java/lang/CharSequence` will clear the text. This action will also put the
cursor at the end of text.

<br />

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_SET_TEXT`

Constant Value:

2097152
(0x00200000)


### CHECKED_STATE_FALSE

Added in [API level 36](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int CHECKED_STATE_FALSE
```

This node is not checked.

<br />

Constant Value:

0
(0x00000000)


### CHECKED_STATE_PARTIAL

Added in [API level 36](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int CHECKED_STATE_PARTIAL
```

This node is partially checked. For example,
when a checkbox owns a number of sub-options and they have
different states, then the main checkbox is in a partially-checked state.

<br />

Constant Value:

2
(0x00000002)


### CHECKED_STATE_TRUE

Added in [API level 36](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int CHECKED_STATE_TRUE
```

This node is checked.

<br />

Constant Value:

1
(0x00000001)


### EXPANDED_STATE_COLLAPSED

Added in [API level 36](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int EXPANDED_STATE_COLLAPSED
```

Expanded state for a collapsed expandable element.

<br />

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getExpandedState()`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setExpandedState(int)`

Constant Value:

1
(0x00000001)


### EXPANDED_STATE_FULL

Added in [API level 36](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int EXPANDED_STATE_FULL
```

Expanded state for a expanded expandable element that cannot be expanded further.

<br />

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getExpandedState()`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setExpandedState(int)`

Constant Value:

3
(0x00000003)


### EXPANDED_STATE_PARTIAL

Added in [API level 36](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int EXPANDED_STATE_PARTIAL
```

Expanded state for an expanded expandable element that can still be expanded further.

<br />

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getExpandedState()`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setExpandedState(int)`

Constant Value:

2
(0x00000002)


### EXPANDED_STATE_UNDEFINED

Added in [API level 36](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int EXPANDED_STATE_UNDEFINED
```

Expanded state for a non-expandable element

<br />

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getExpandedState()`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setExpandedState(int)`

Constant Value:

0
(0x00000000)


### EXTRA_DATA_RENDERING_INFO_KEY

Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final String EXTRA_DATA_RENDERING_INFO_KEY
```

Key used to request extra data for the rendering information.
The key requests that a `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.ExtraRenderingInfo` be added to this
info. This request is made with `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#refreshWithExtraData(java.lang.String,%20android.os.Bundle)` without
argument.


The data can be retrieved from the `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.ExtraRenderingInfo` returned by
`https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getExtraRenderingInfo()` using `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.ExtraRenderingInfo#getLayoutSize()`,
`https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.ExtraRenderingInfo#getTextSizeInPx()` and
`https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.ExtraRenderingInfo#getTextSizeUnit()`. For layout params, it is supported by both
`https://developer.android.com/reference/android/widget/TextView` and `https://developer.android.com/reference/android/view/ViewGroup`. For text size and unit, it is only supported by
`https://developer.android.com/reference/android/widget/TextView`.

<br />

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#refreshWithExtraData(java.lang.String,%20android.os.Bundle)`

Constant Value:

"android.view.accessibility.extra.DATA_RENDERING_INFO_KEY"


### EXTRA_DATA_REQUEST_LAYOUT_BASED_ACTIONS_KEY

Added in [API level 37](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final String EXTRA_DATA_REQUEST_LAYOUT_BASED_ACTIONS_KEY
```

Key used to request that the node source re-evaluate and update this node's layout-dependent
actions. This request is made with `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#refreshWithExtraData(java.lang.String,%20android.os.Bundle)` and takes no
arguments.


Some actions may depend on the on-screen layout of a node. In complex or dynamic UIs, it
may be difficult for a source to determine if a node is truly actionable without more
intensive inspection. For example, a node may be misreported as clickable despite being
occluded, requiring a hit-test to confirm the availability of the action.


Using this key requests that the source perform a more intensive, layout-based analysis to
determine which actions are available to the user. After this request, the source will update
the actions and related properties of this node. For example, for clickability, this may
result in changes to the value returned by `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#isClickable()` and the presence of
`https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_CLICK` in the node's `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getActionList()`.


This analysis can be computationally expensive and should only be requested when needed to
resolve ambiguous or inaccurate actions.


Providers may advertise that they support this request using
`https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setAvailableExtraData(java.util.List<java.lang.String>)`. Services may check for support with
`https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getAvailableExtraData()`.

<br />

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#refreshWithExtraData(java.lang.String,%20android.os.Bundle)`

Constant Value:

"android.view.accessibility.extra.DATA_REQUEST_LAYOUT_BASED_ACTIONS_KEY"


### EXTRA_DATA_TEXT_CHARACTER_LOCATION_ARG_LENGTH

Added in [API level 26](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final String EXTRA_DATA_TEXT_CHARACTER_LOCATION_ARG_LENGTH
```

Integer argument specifying the end index of the requested text location data. Must be
positive and no larger than `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#EXTRA_DATA_TEXT_CHARACTER_LOCATION_ARG_MAX_LENGTH`.

<br />

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#EXTRA_DATA_TEXT_CHARACTER_LOCATION_KEY`

Constant Value:

"android.view.accessibility.extra.DATA_TEXT_CHARACTER_LOCATION_ARG_LENGTH"


### EXTRA_DATA_TEXT_CHARACTER_LOCATION_ARG_MAX_LENGTH

Added in [API level 31](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int EXTRA_DATA_TEXT_CHARACTER_LOCATION_ARG_MAX_LENGTH
```

The maximum allowed length of the requested text location data.

<br />

Constant Value:

20000
(0x00004e20)


### EXTRA_DATA_TEXT_CHARACTER_LOCATION_ARG_START_INDEX

Added in [API level 26](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final String EXTRA_DATA_TEXT_CHARACTER_LOCATION_ARG_START_INDEX
```

Integer argument specifying the start index of the requested text location data. Must be
valid inside the CharSequence returned by `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getText()`.

<br />

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#EXTRA_DATA_TEXT_CHARACTER_LOCATION_KEY`

Constant Value:

"android.view.accessibility.extra.DATA_TEXT_CHARACTER_LOCATION_ARG_START_INDEX"


### EXTRA_DATA_TEXT_CHARACTER_LOCATION_IN_WINDOW_KEY

Added in [API level 36](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final String EXTRA_DATA_TEXT_CHARACTER_LOCATION_IN_WINDOW_KEY
```

Key used to request and locate extra data for text character location in
window coordinates. This key requests that an array of
`https://developer.android.com/reference/android/graphics/RectF`s be added to the extras. This request is made
with `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#refreshWithExtraData(java.lang.String,%20android.os.Bundle)`. The arguments taken by
this request are two integers:
`https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#EXTRA_DATA_TEXT_CHARACTER_LOCATION_ARG_START_INDEX` and
`https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#EXTRA_DATA_TEXT_CHARACTER_LOCATION_ARG_LENGTH`. The starting index
must be valid inside the CharSequence returned by `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getText()`, and
the length must be positive.


Providers may advertise that they support text characters in window coordinates using
`https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setAvailableExtraData(java.util.List<java.lang.String>)`. Services may check if an implementation supports text
characters in window coordinates with `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getAvailableExtraData()`.


The data can be retrieved from the `Bundle` returned by
`https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getExtras()` using this string as a key for
`https://developer.android.com/reference/android/os/Bundle#getParcelableArray(java.lang.String,%20java.lang.Class<T>)`. The
`https://developer.android.com/reference/android/graphics/RectF` will be `null` for characters that either do
not exist or are outside of the window bounds.


Note that character locations in window bounds are not modified by
changes in display magnification.

<br />

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#refreshWithExtraData(java.lang.String,%20android.os.Bundle)`

Constant Value:

"android.view.accessibility.extra.DATA_TEXT_CHARACTER_LOCATION_IN_WINDOW_KEY"


### EXTRA_DATA_TEXT_CHARACTER_LOCATION_KEY

Added in [API level 26](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final String EXTRA_DATA_TEXT_CHARACTER_LOCATION_KEY
```

Key used to request and locate extra data for text character location. This key requests that
an array of `https://developer.android.com/reference/android/graphics/RectF`s be added to the extras. This request is made with
`https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#refreshWithExtraData(java.lang.String,%20android.os.Bundle)`. The arguments taken by this request are two
integers: `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#EXTRA_DATA_TEXT_CHARACTER_LOCATION_ARG_START_INDEX` and
`https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#EXTRA_DATA_TEXT_CHARACTER_LOCATION_ARG_LENGTH`. The starting index must be valid
inside the CharSequence returned by `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getText()`, and the length must be positive.


The data can be retrieved from the `Bundle` returned by `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getExtras()` using this
string as a key for `https://developer.android.com/reference/android/os/Bundle#getParcelableArray(java.lang.String,%20java.lang.Class<T>)`. The
`https://developer.android.com/reference/android/graphics/RectF` will be `null` for characters that either do not exist
or are off the screen.


Note that character locations returned are modified by changes in display magnification.

<br />

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#refreshWithExtraData(java.lang.String,%20android.os.Bundle)`

Constant Value:

"android.view.accessibility.extra.DATA_TEXT_CHARACTER_LOCATION_KEY"


### FLAG_PREFETCH_ANCESTORS

Added in [API level 33](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int FLAG_PREFETCH_ANCESTORS
```

Prefetching strategy that prefetches the ancestors of the requested node.

Ancestors will be prefetched before siblings and descendants.

<br />

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getChild(int,%20int)`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getParent(int)`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityWindowInfo#getRoot(int)`
- `https://developer.android.com/reference/android/accessibilityservice/AccessibilityService#getRootInActiveWindow(int)`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityRecord#getSource(int)`

Constant Value:

1
(0x00000001)


### FLAG_PREFETCH_DESCENDANTS_BREADTH_FIRST

Added in [API level 33](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int FLAG_PREFETCH_DESCENDANTS_BREADTH_FIRST
```

Prefetching strategy that prefetches the descendants of the requested node breadth-first.

This must not be combined with `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#FLAG_PREFETCH_DESCENDANTS_HYBRID` or
`https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#FLAG_PREFETCH_DESCENDANTS_DEPTH_FIRST` or this will trigger an
IllegalArgumentException.

See `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#FLAG_PREFETCH_ANCESTORS` for information on where these flags can be used.

<br />

Constant Value:

16
(0x00000010)


### FLAG_PREFETCH_DESCENDANTS_DEPTH_FIRST

Added in [API level 33](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int FLAG_PREFETCH_DESCENDANTS_DEPTH_FIRST
```

Prefetching strategy that prefetches the descendants of the requested node depth-first.

This must not be combined with `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#FLAG_PREFETCH_DESCENDANTS_HYBRID` or
`https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#FLAG_PREFETCH_DESCENDANTS_BREADTH_FIRST` or this will trigger an
IllegalArgumentException.

See `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#FLAG_PREFETCH_ANCESTORS` for information on where these flags can be used.

<br />

Constant Value:

8
(0x00000008)


### FLAG_PREFETCH_DESCENDANTS_HYBRID

Added in [API level 33](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int FLAG_PREFETCH_DESCENDANTS_HYBRID
```

Prefetching strategy that prefetches the descendants in a hybrid depth first and breadth
first approach.

The children of the root node is prefetched before recursing on the children. This
must not be combined with `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#FLAG_PREFETCH_DESCENDANTS_DEPTH_FIRST` or
`https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#FLAG_PREFETCH_DESCENDANTS_BREADTH_FIRST` or this will trigger an
IllegalArgumentException.

See `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#FLAG_PREFETCH_ANCESTORS` for information on where these flags can be used.

<br />

Constant Value:

4
(0x00000004)


### FLAG_PREFETCH_SIBLINGS

Added in [API level 33](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int FLAG_PREFETCH_SIBLINGS
```

Prefetching strategy that prefetches the siblings of the requested node.

To avoid disconnected trees, this flag will also prefetch the parent. Siblings will be
prefetched before descendants.

See `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#FLAG_PREFETCH_ANCESTORS` for information on where these flags can be used.

<br />

Constant Value:

2
(0x00000002)


### FLAG_PREFETCH_UNINTERRUPTIBLE

Added in [API level 33](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int FLAG_PREFETCH_UNINTERRUPTIBLE
```

Prefetching flag that specifies prefetching should not be interrupted by a request to
retrieve a node or perform an action on a node.

See `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#FLAG_PREFETCH_ANCESTORS` for information on where these flags can be used.

<br />

Constant Value:

32
(0x00000020)


### FOCUS_ACCESSIBILITY

Added in [API level 16](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int FOCUS_ACCESSIBILITY
```

The accessibility focus.

<br />

Constant Value:

2
(0x00000002)


### FOCUS_INPUT

Added in [API level 16](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int FOCUS_INPUT
```

The input focus.

<br />

Constant Value:

1
(0x00000001)


### MAX_NUMBER_OF_PREFETCHED_NODES

Added in [API level 33](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int MAX_NUMBER_OF_PREFETCHED_NODES
```

Maximum batch size of prefetched nodes for a request.

<br />

Constant Value:

50
(0x00000032)


### MOVEMENT_GRANULARITY_CHARACTER

Added in [API level 16](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int MOVEMENT_GRANULARITY_CHARACTER
```

Movement granularity bit for traversing the text of a node by character.

<br />

Constant Value:

1
(0x00000001)


### MOVEMENT_GRANULARITY_LINE

Added in [API level 16](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int MOVEMENT_GRANULARITY_LINE
```

Movement granularity bit for traversing the text of a node by line.

<br />

Constant Value:

4
(0x00000004)


### MOVEMENT_GRANULARITY_PAGE

Added in [API level 16](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int MOVEMENT_GRANULARITY_PAGE
```

Movement granularity bit for traversing the text of a node by page.

<br />

Constant Value:

16
(0x00000010)


### MOVEMENT_GRANULARITY_PARAGRAPH

Added in [API level 16](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int MOVEMENT_GRANULARITY_PARAGRAPH
```

Movement granularity bit for traversing the text of a node by paragraph.

<br />

Constant Value:

8
(0x00000008)


### MOVEMENT_GRANULARITY_WORD

Added in [API level 16](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int MOVEMENT_GRANULARITY_WORD
```

Movement granularity bit for traversing the text of a node by word.

<br />

Constant Value:

2
(0x00000002)


## Fields

### CREATOR

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final Creator<AccessibilityNodeInfo> CREATOR
```

<br />

<br />

**See also:**

- `https://developer.android.com/reference/android/os/Parcelable.Creator`

## Public constructors

### AccessibilityNodeInfo

Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public AccessibilityNodeInfo ()
```

Creates a new `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo`.

<br />

### AccessibilityNodeInfo

Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public AccessibilityNodeInfo (AccessibilityNodeInfo info)
```

Copy constructor. Creates a new `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo`, and this new instance is
initialized from the given `info`.

<br />

| Parameters ||
|---|---|
| `info` | `AccessibilityNodeInfo`: The other info. This value cannot be `null`. <br /> |

### AccessibilityNodeInfo

Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public AccessibilityNodeInfo (View source)
```

Creates a new `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo` with the given `source`.

<br />

| Parameters ||
|---|---|
| `source` | `View`: The source view. This value cannot be `null`. <br /> |

### AccessibilityNodeInfo

Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public AccessibilityNodeInfo (View root, 
                int virtualDescendantId)
```

Creates a new `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo` with the given `source`.

<br />

| Parameters ||
|---|---|
| `root` | `View`: The root of the virtual subtree. This value cannot be `null`. <br /> |
| `virtualDescendantId` | `int`: The id of the virtual descendant. <br /> |

## Public methods

### addAction

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)   
Deprecated in [API level
21](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public void addAction (int action)
```


**This method was deprecated
in API level 21.**   

This has been deprecated for `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#addAction(android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction)`

Adds an action that can be performed on the node.


**Note:** Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.

<br />

<br />

| Parameters ||
|---|---|
| `action` | `int`: The action. <br /> |

| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalArgumentException` | If the argument is not one of the standard actions. |
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService. |

### addAction

Added in [API level 21](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public void addAction (AccessibilityNodeInfo.AccessibilityAction action)
```

Adds an action that can be performed on the node.


To add a standard action use the static constants on `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction`.
To add a custom action create a new `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction` by passing in a
resource id from your application as the action id and an optional label that
describes the action. To override one of the standard actions use as the action
id of a standard action id such as `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_CLICK` and an optional label that
describes the action.


Use `https://developer.android.com/reference/androidx/core/view/ViewCompat.html#addAccessibilityAction(android.view.View,%20java.lang.CharSequence,%20androidx.core.view.accessibility.AccessibilityViewCommand)` to register an action directly on the view.


**Note:** Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.

<br />

<br />

| Parameters ||
|---|---|
| `action` | `AccessibilityNodeInfo.AccessibilityAction`: The action. <br /> |

| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService. |

### addChild

Added in [API level 16](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public void addChild (View root, 
                int virtualDescendantId)
```

Adds a virtual child which is a descendant of the given `root`.
If `virtualDescendantId` is `https://developer.android.com/reference/android/view/View#NO_ID` the root
is added as a child.


A virtual descendant is an imaginary View that is reported as a part of the view
hierarchy for accessibility purposes. This enables custom views that draw complex
content to report them selves as a tree of virtual views, thus conveying their
logical structure.
Note that a view cannot be made its own child.

<br />

<br />

| Parameters ||
|---|---|
| `root` | `View`: The root of the virtual subtree. <br /> |
| `virtualDescendantId` | `int`: The id of the virtual child. <br /> |

### addChild

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public void addChild (View child)
```

Adds a child.


**Note:** Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.
Note that a view cannot be made its own child.

<br />

<br />

| Parameters ||
|---|---|
| `child` | `View`: The child. <br /> |

| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService. |

### addLabeledBy

Added in [API level 36](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public void addLabeledBy (View label)
```

Adds the view which serves as the label of the view represented by
this info for accessibility purposes. When multiple labels are
added, the content from each label is combined in the order that
they are added.


If visible text can be used to describe or give meaning to this UI,
this method is preferred. For example, a TextView before an EditText
in the UI usually specifies what information is contained in the
EditText. Hence, the EditText is labeled by the TextView.

<br />

<br />

| Parameters ||
|---|---|
| `label` | `View`: A view that labels this node's source. This value cannot be `null`. <br /> |

### addLabeledBy

Added in [API level 36](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public void addLabeledBy (View root, 
                int virtualDescendantId)
```

Adds the view which serves as the label of the view represented by
this info for accessibility purposes. If `virtualDescendantId`
is `https://developer.android.com/reference/android/view/View#NO_ID` the root is set as the label. When multiple
labels are added, the content from each label is combined in the order
that they are added.


A virtual descendant is an imaginary View that is reported as a part of the view
hierarchy for accessibility purposes. This enables custom views that draw complex
content to report themselves as a tree of virtual views, thus conveying their
logical structure.


If visible text can be used to describe or give meaning to this UI,
this method is preferred. For example, a TextView before an EditText
in the UI usually specifies what information is contained in the
EditText. Hence, the EditText is labeled by the TextView.


**Note:** Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.

<br />

<br />

| Parameters ||
|---|---|
| `root` | `View`: A root whose virtual descendant labels this node's source. This value cannot be `null`. <br /> |
| `virtualDescendantId` | `int`: The id of the virtual descendant. <br /> |

### canOpenPopup

Added in [API level 19](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean canOpenPopup ()
```

Gets if this node opens a popup or a dialog.

<br />

| Returns ||
|---|---|
| `boolean` | If the the node opens a popup. <br /> |

### describeContents

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int describeContents ()
```

Describe the kinds of special objects contained in this Parcelable
instance's marshaled representation. For example, if the object will
include a file descriptor in the output of `https://developer.android.com/reference/android/os/Parcelable#writeToParcel(android.os.Parcel,%20int)`,
the return value of this method must include the
`https://developer.android.com/reference/android/os/Parcelable#CONTENTS_FILE_DESCRIPTOR` bit.

<br />

| Returns ||
|---|---|
| `int` | a bitmask indicating the set of special object types marshaled by this Parcelable object instance. Value is either `0` or - `https://developer.android.com/reference/android/os/Parcelable#CONTENTS_FILE_DESCRIPTOR` |

### equals

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean equals (Object object)
```

Indicates whether some other object is "equal to" this one.


The `equals` method implements an equivalence relation
on non-null object references:

- It is *reflexive*: for any non-null reference value `x`, `x.equals(x)` should return `true`.
- It is *symmetric*: for any non-null reference values `x` and `y`, `x.equals(y)` should return `true` if and only if `y.equals(x)` returns `true`.
- It is *transitive*: for any non-null reference values `x`, `y`, and `z`, if `x.equals(y)` returns `true` and `y.equals(z)` returns `true`, then `x.equals(z)` should return `true`.
- It is *consistent*: for any non-null reference values `x` and `y`, multiple invocations of `x.equals(y)` consistently return `true` or consistently return `false`, provided no information used in `equals` comparisons on the objects is modified.
- For any non-null reference value `x`, `x.equals(null)` should return `false`.


An equivalence relation partitions the elements it operates on
into *equivalence classes*; all the members of an
equivalence class are equal to each other. Members of an
equivalence class are substitutable for each other, at least
for some purposes.

<br />

| Parameters ||
|---|---|
| `object` | `Object`: This value may be `null`. <br /> |

| Returns ||
|---|---|
| `boolean` | `true` if this object is the same as the obj argument; `false` otherwise. <br /> |

### findAccessibilityNodeInfosByText

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public List<AccessibilityNodeInfo> findAccessibilityNodeInfosByText (String text)
```

Finds `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo`s by text. The match is case
insensitive containment. The search is relative to this info i.e.
this info is the root of the traversed tree.


**Note:** If this view hierarchy has a `https://developer.android.com/reference/android/view/SurfaceView` embedding another
view hierarchy via `https://developer.android.com/reference/android/view/SurfaceView#setChildSurfacePackage(android.view.SurfaceControlViewHost.SurfacePackage)`, there is a limitation that
this API won't be able to find the node for the view on the embedded view hierarchy. It's
because views don't know about the embedded hierarchies. Instead, you could traverse all
the children to find the node.

<br />

<br />

| Parameters ||
|---|---|
| `text` | `String`: The searched text. <br /> |

| Returns ||
|---|---|
| `https://developer.android.com/reference/java/util/List<https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo>` | A list of node info. <br /> |

### findAccessibilityNodeInfosByViewId

Added in [API level 18](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public List<AccessibilityNodeInfo> findAccessibilityNodeInfosByViewId (String viewId)
```

Finds `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo`s by the fully qualified view id's resource
name where a fully qualified id is of the from "package:id/id_resource_name".
For example, if the target application's package is "foo.bar" and the id
resource name is "baz", the fully qualified resource id is "foo.bar:id/baz".


**Note:** The primary usage of this API is for UI test automation
and in order to report the fully qualified view id if an `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo`
the client has to set the `https://developer.android.com/reference/android/accessibilityservice/AccessibilityServiceInfo#FLAG_REPORT_VIEW_IDS`
flag when configuring the `https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.


**Note:** If this view hierarchy has a `https://developer.android.com/reference/android/view/SurfaceView` embedding another
view hierarchy via `https://developer.android.com/reference/android/view/SurfaceView#setChildSurfacePackage(android.view.SurfaceControlViewHost.SurfacePackage)`, there is a limitation that
this API won't be able to find the node for the view on the embedded view hierarchy. It's
because views don't know about the embedded hierarchies. Instead, you could traverse all
the children to find the node.

<br />

<br />

| Parameters ||
|---|---|
| `viewId` | `String`: The fully qualified resource name of the view id to find. This value cannot be `null`. <br /> |

| Returns ||
|---|---|
| `https://developer.android.com/reference/java/util/List<https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo>` | A list of node info. <br /> |

### findFocus

Added in [API level 16](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public AccessibilityNodeInfo findFocus (int focus)
```

Find the view that has the specified focus type. The search starts from
the view represented by this node info.


**Note:** If this view hierarchy has a `https://developer.android.com/reference/android/view/SurfaceView` embedding another
view hierarchy via `https://developer.android.com/reference/android/view/SurfaceView#setChildSurfacePackage(android.view.SurfaceControlViewHost.SurfacePackage)`, there is a limitation that
this API won't be able to find the node for the view on the embedded view hierarchy. It's
because views don't know about the embedded hierarchies. Instead, you could traverse all
the children to find the node. Or, use `https://developer.android.com/reference/android/accessibilityservice/AccessibilityService#findFocus(int)` for
`https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#FOCUS_ACCESSIBILITY` only since it has no such limitation.

<br />

<br />

| Parameters ||
|---|---|
| `focus` | `int`: The focus to find. One of `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#FOCUS_INPUT` or `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#FOCUS_ACCESSIBILITY`. <br /> |

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo` | The node info of the focused view or null. <br /> |

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#FOCUS_INPUT`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#FOCUS_ACCESSIBILITY`

### focusSearch

Added in [API level 16](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public AccessibilityNodeInfo focusSearch (int direction)
```

Searches for the nearest view in the specified direction that can take
the input focus.


**Note:** If this view hierarchy has a `https://developer.android.com/reference/android/view/SurfaceView` embedding another
view hierarchy via `https://developer.android.com/reference/android/view/SurfaceView#setChildSurfacePackage(android.view.SurfaceControlViewHost.SurfacePackage)`, there is a limitation that
this API won't be able to find the node for the view in the specified direction on the
embedded view hierarchy. It's because views don't know about the embedded hierarchies.
Instead, you could traverse all the children to find the node.

<br />

<br />

| Parameters ||
|---|---|
| `direction` | `int`: The direction. Can be one of: `https://developer.android.com/reference/android/view/View#FOCUS_DOWN`, `https://developer.android.com/reference/android/view/View#FOCUS_UP`, `https://developer.android.com/reference/android/view/View#FOCUS_LEFT`, `https://developer.android.com/reference/android/view/View#FOCUS_RIGHT`, `https://developer.android.com/reference/android/view/View#FOCUS_FORWARD`, `https://developer.android.com/reference/android/view/View#FOCUS_BACKWARD`. <br /> |

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo` | The node info for the view that can take accessibility focus. <br /> |

### getActionList

Added in [API level 21](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public List<AccessibilityNodeInfo.AccessibilityAction> getActionList ()
```

Gets the actions that can be performed on the node.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/java/util/List<https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction>` | <br /> |

### getActions

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)   
Deprecated in [API level
21](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int getActions ()
```


**This method was deprecated
in API level 21.**   

Use `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getActionList()`.

Gets the actions that can be performed on the node.

<br />

| Returns ||
|---|---|
| `int` | The bit mask of with actions. <br /> |

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_FOCUS`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_CLEAR_FOCUS`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_SELECT`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_CLEAR_SELECTION`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_ACCESSIBILITY_FOCUS`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_CLEAR_ACCESSIBILITY_FOCUS`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_CLICK`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_LONG_CLICK`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_NEXT_AT_MOVEMENT_GRANULARITY`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_PREVIOUS_AT_MOVEMENT_GRANULARITY`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_NEXT_HTML_ELEMENT`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_PREVIOUS_HTML_ELEMENT`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_SCROLL_FORWARD`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_SCROLL_BACKWARD`

### getAvailableExtraData

Added in [API level 26](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public List<String> getAvailableExtraData ()
```

Get the extra data available for this node.


Some data that is useful for some accessibility services is expensive to compute, and would
place undue overhead on apps to compute all the time. That data can be requested with
`https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#refreshWithExtraData(java.lang.String,%20android.os.Bundle)`.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/java/util/List<https://developer.android.com/reference/java/lang/String>` | An unmodifiable list of keys corresponding to extra data that can be requested. <br /> |

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#EXTRA_DATA_RENDERING_INFO_KEY`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#EXTRA_DATA_TEXT_CHARACTER_LOCATION_KEY`

### getBoundsInParent

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)   
Deprecated in [API level
29](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public void getBoundsInParent (Rect outBounds)
```


**This method was deprecated
in API level 29.**   

Use `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getBoundsInScreen(android.graphics.Rect)` instead.

Gets the node bounds in the viewParent's coordinates.
`https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getParent()` does not represent the source's viewParent.
Instead it represents the result of `https://developer.android.com/reference/android/view/View#getParentForAccessibility()`,
which returns the closest ancestor where `https://developer.android.com/reference/android/view/View#isImportantForAccessibility()` is true.
So this method is not reliable.


When magnification is enabled, the bounds in parent are also scaled up by magnification
scale. For example, it returns Rect(20, 20, 200, 200) for original bounds
Rect(10, 10, 100, 100), when the magnification scale is 2.

<br />

<br />

<br />

| Parameters ||
|---|---|
| `outBounds` | `Rect`: The output node bounds. <br /> |

### getBoundsInScreen

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public void getBoundsInScreen (Rect outBounds)
```

Gets the node bounds in screen coordinates.


When magnification is enabled, the bounds in screen are scaled up by magnification scale
and the positions are also adjusted according to the offset of magnification viewport.
For example, it returns Rect(-180, -180, 0, 0) for original bounds Rect(10, 10, 100, 100),
when the magnification scale is 2 and offsets for X and Y are both 200.

<br />

<br />

<br />

| Parameters ||
|---|---|
| `outBounds` | `Rect`: The output node bounds. <br /> |

### getBoundsInWindow

Added in [API level 34](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public void getBoundsInWindow (Rect outBounds)
```

Gets the node bounds in window coordinates.


The node bounds returned are not scaled by magnification.

<br />

<br />

<br />

| Parameters ||
|---|---|
| `outBounds` | `Rect`: The output node bounds. This value cannot be `null`. <br /> |

### getChecked

Added in [API level 36](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int getChecked ()
```

Gets the checked state of this node. This is only meaningful
when `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#isCheckable()` returns `true`.

<br />

| Returns ||
|---|---|
| `int` | The checked state, one of: - `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#CHECKED_STATE_FALSE` - `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#CHECKED_STATE_TRUE` - `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#CHECKED_STATE_PARTIAL` . Value is one of the following: - `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#CHECKED_STATE_FALSE` - `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#CHECKED_STATE_TRUE` - `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#CHECKED_STATE_PARTIAL` |

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setCheckable(boolean)`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#isCheckable()`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setChecked(int)`

### getChild

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public AccessibilityNodeInfo getChild (int index)
```

Get the child at given index.

<br />

| Parameters ||
|---|---|
| `index` | `int`: The child index. <br /> |

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo` | The child node. <br /> |

| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called outside of an `https://developer.android.com/reference/android/accessibilityservice/AccessibilityService` and before calling `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setQueryFromAppProcessEnabled(android.view.View,%20boolean)`. |

### getChild

Added in [API level 33](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public AccessibilityNodeInfo getChild (int index, 
                int prefetchingStrategy)
```

Get the child at given index.


See `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getParent(int)` for a description of prefetching.

<br />

| Parameters ||
|---|---|
| `index` | `int`: The child index. <br /> |
| `prefetchingStrategy` | `int`: the prefetching strategy. Value is either `0` or a combination of the following: - `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#FLAG_PREFETCH_ANCESTORS` - `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#FLAG_PREFETCH_SIBLINGS` - `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#FLAG_PREFETCH_DESCENDANTS_HYBRID` - `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#FLAG_PREFETCH_DESCENDANTS_DEPTH_FIRST` - `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#FLAG_PREFETCH_DESCENDANTS_BREADTH_FIRST` - `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#FLAG_PREFETCH_UNINTERRUPTIBLE` |

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo` | The child node. This value may be `null`. <br /> |

| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called outside of an `https://developer.android.com/reference/android/accessibilityservice/AccessibilityService` and before calling `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setQueryFromAppProcessEnabled(android.view.View,%20boolean)`. |

### getChildCount

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int getChildCount ()
```

Gets the number of children.

<br />

| Returns ||
|---|---|
| `int` | The child count. <br /> |

### getClassName

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public CharSequence getClassName ()
```

Gets the class this node comes from.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/java/lang/CharSequence` | The class name. <br /> |

### getCollectionInfo

Added in [API level 19](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public AccessibilityNodeInfo.CollectionInfo getCollectionInfo ()
```

Gets the collection info if the node is a collection. A collection
child is always a collection item.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.CollectionInfo` | The collection info. <br /> |

### getCollectionItemInfo

Added in [API level 19](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public AccessibilityNodeInfo.CollectionItemInfo getCollectionItemInfo ()
```

Gets the collection item info if the node is a collection item. A collection
item is always a child of a collection.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.CollectionItemInfo` | The collection item info. <br /> |

### getContainerTitle

Added in [API level 34](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public CharSequence getContainerTitle ()
```

Returns the container title.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/java/lang/CharSequence` | This value may be `null`. <br /> |

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setContainerTitle(java.lang.CharSequence)`

### getContentDescription

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public CharSequence getContentDescription ()
```

Gets the content description of this node.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/java/lang/CharSequence` | The content description. <br /> |

### getDrawingOrder

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int getDrawingOrder ()
```

Get the drawing order of the view corresponding it this node.


Drawing order is determined only within the node's parent, so this index is only relative
to its siblings.


In some cases, the drawing order is essentially simultaneous, so it is possible for two
siblings to return the same value. It is also possible that values will be skipped.

<br />

| Returns ||
|---|---|
| `int` | The drawing position of the view corresponding to this node relative to its siblings. <br /> |

### getError

Added in [API level 21](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public CharSequence getError ()
```

Gets the error text of this node.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/java/lang/CharSequence` | The error text. <br /> |

### getExpandedState

Added in [API level 36](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int getExpandedState ()
```

Gets the expanded state for this node.

<br />

| Returns ||
|---|---|
| `int` | The expanded state, one of: - `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#EXPANDED_STATE_UNDEFINED` - `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#EXPANDED_STATE_COLLAPSED` - `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#EXPANDED_STATE_FULL` - `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#EXPANDED_STATE_PARTIAL` . Value is one of the following: - `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#EXPANDED_STATE_UNDEFINED` - `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#EXPANDED_STATE_COLLAPSED` - `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#EXPANDED_STATE_PARTIAL` - `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#EXPANDED_STATE_FULL` |

### getExtraRenderingInfo

Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public AccessibilityNodeInfo.ExtraRenderingInfo getExtraRenderingInfo ()
```

Gets the `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.ExtraRenderingInfo` if the node is meant to be
refreshed with extra data to examine rendering related accessibility issues.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.ExtraRenderingInfo` | The `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.ExtraRenderingInfo`. This value may be `null`. <br /> |

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#EXTRA_DATA_RENDERING_INFO_KEY`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#refreshWithExtraData(java.lang.String,%20android.os.Bundle)`

### getExtras

Added in [API level 19](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public Bundle getExtras ()
```

Gets an optional bundle with extra data. The bundle
is lazily created and never `null`.


**Note:** It is recommended to use the package
name of your application as a prefix for the keys to avoid
collisions which may confuse an accessibility service if the
same key has different meaning when emitted from different
applications.

<br />

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/os/Bundle` | The bundle. <br /> |

### getHintText

Added in [API level 26](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public CharSequence getHintText ()
```

Gets the hint text of this node. Only applies to nodes where text can be entered.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/java/lang/CharSequence` | The hint text. <br /> |

### getInputType

Added in [API level 19](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int getInputType ()
```

Gets the input type of the source as defined by `https://developer.android.com/reference/android/text/InputType`.

<br />

| Returns ||
|---|---|
| `int` | The input type. <br /> |

### getLabelFor

Added in [API level 17](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)   
Deprecated in [API level
36](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public AccessibilityNodeInfo getLabelFor ()
```


**This method was deprecated
in API level 36.**   

Use `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getLabeledByList()` on the labeled node instead,
since calling `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#addLabeledBy(android.view.View)` or `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#addLabeledBy(android.view.View,%20int)`
on the labeled node do not automatically provide that node from this method.

Gets the node info for which the view represented by this info serves as
a label for accessibility purposes.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo` | The labeled info. <br /> |

### getLabeledBy

Added in [API level 17](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)   
Deprecated in [API level
36](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public AccessibilityNodeInfo getLabeledBy ()
```


**This method was deprecated
in API level 36.**   

Use `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getLabeledByList()` instead.

Gets the node info which serves as the label of the view represented by
this info for accessibility purposes.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo` | The label. <br /> |

### getLabeledByList

Added in [API level 36](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public List<AccessibilityNodeInfo> getLabeledByList ()
```

Gets the list of node infos which serve as the labels of the view represented by
this info for accessibility purposes.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/java/util/List<https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo>` | The list of labels in the order that they were added. This value cannot be `null`. <br /> |

### getLiveRegion

Added in [API level 19](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int getLiveRegion ()
```

Gets the node's live region mode.


A live region is a node that contains information that is important for
the user and when it changes the user should be notified. For example,
a Snackbar that displays a confirmation notification should be marked
as a live region with mode
`https://developer.android.com/reference/android/view/View#ACCESSIBILITY_LIVE_REGION_POLITE`.


It is the responsibility of the accessibility service to monitor
`https://developer.android.com/reference/android/view/accessibility/AccessibilityEvent#TYPE_WINDOW_CONTENT_CHANGED` events indicating
changes to live region nodes and their children.

<br />

| Returns ||
|---|---|
| `int` | The live region mode, or `https://developer.android.com/reference/android/view/View#ACCESSIBILITY_LIVE_REGION_NONE` if the view is not a live region. <br /> |

**See also:**

- `https://developer.android.com/reference/android/view/View#getAccessibilityLiveRegion()`

### getMaxTextLength

Added in [API level 21](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int getMaxTextLength ()
```

Returns the maximum text length for this node.

<br />

| Returns ||
|---|---|
| `int` | The maximum text length, or -1 for no limit. <br /> |

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setMaxTextLength(int)`

### getMinDurationBetweenContentChanges

Added in [API level 34](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public Duration getMinDurationBetweenContentChanges ()
```

Gets the minimum time duration between two content change events.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/java/time/Duration` | This value cannot be `null`. <br /> |

### getMovementGranularities

Added in [API level 16](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int getMovementGranularities ()
```

Gets the movement granularities for traversing the text of this node.

<br />

| Returns ||
|---|---|
| `int` | The bit mask with granularities. <br /> |

### getPackageName

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public CharSequence getPackageName ()
```

Gets the package this node comes from.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/java/lang/CharSequence` | The package name. <br /> |

### getPaneTitle

Added in [API level 28](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public CharSequence getPaneTitle ()
```

Get the title of the pane represented by this node.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/java/lang/CharSequence` | The title of the pane represented by this node, or `null` if this node does not represent a pane. <br /> |

### getParent

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public AccessibilityNodeInfo getParent ()
```

Gets the parent.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo` | The parent. <br /> |

| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called outside of an `https://developer.android.com/reference/android/accessibilityservice/AccessibilityService` and before calling `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setQueryFromAppProcessEnabled(android.view.View,%20boolean)`. |

### getParent

Added in [API level 33](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public AccessibilityNodeInfo getParent (int prefetchingStrategy)
```

Gets the parent.


Use `prefetchingStrategy` to determine the types of
nodes prefetched from the app if the requested node is not in the cache and must be retrieved
by the app. The default strategy for `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getParent()` is a combination of ancestor and
sibling strategies. The app will prefetch until all nodes fulfilling the strategies are
fetched, another node request is sent, or the maximum prefetch batch size of
`https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#MAX_NUMBER_OF_PREFETCHED_NODES` nodes is reached. To prevent interruption by another
request and to force prefetching of the max batch size, use
`https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#FLAG_PREFETCH_UNINTERRUPTIBLE`.

<br />

<br />

| Parameters ||
|---|---|
| `prefetchingStrategy` | `int`: the prefetching strategy. Value is either `0` or a combination of the following: - `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#FLAG_PREFETCH_ANCESTORS` - `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#FLAG_PREFETCH_SIBLINGS` - `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#FLAG_PREFETCH_DESCENDANTS_HYBRID` - `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#FLAG_PREFETCH_DESCENDANTS_DEPTH_FIRST` - `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#FLAG_PREFETCH_DESCENDANTS_BREADTH_FIRST` - `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#FLAG_PREFETCH_UNINTERRUPTIBLE` |

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo` | The parent. This value may be `null`. <br /> |

| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called outside of an `https://developer.android.com/reference/android/accessibilityservice/AccessibilityService` and before calling `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setQueryFromAppProcessEnabled(android.view.View,%20boolean)`. |

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#FLAG_PREFETCH_ANCESTORS`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#FLAG_PREFETCH_DESCENDANTS_BREADTH_FIRST`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#FLAG_PREFETCH_DESCENDANTS_DEPTH_FIRST`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#FLAG_PREFETCH_DESCENDANTS_HYBRID`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#FLAG_PREFETCH_SIBLINGS`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#FLAG_PREFETCH_UNINTERRUPTIBLE`

### getRangeInfo

Added in [API level 19](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public AccessibilityNodeInfo.RangeInfo getRangeInfo ()
```

Gets the range info if this node is a range.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.RangeInfo` | The range. <br /> |

### getSelection

Added in [version 36.1](https://developer.android.com/topic/libraries/support-library/revisions)

```
public AccessibilityNodeInfo.Selection getSelection ()
```

Gets the extended selection, which is a representation of selection that spans multiple nodes
that exist within the subtree of the node defining selection.

**Note:** Nodes that are candidates to contain a selection should return
`true` from `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#isFocusable()` and `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#isFocused()`.
The start and end `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.SelectionPosition`s of this `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.Selection`
should exist within `this` node or its descendants.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.Selection` | The extended selection within the node's subtree, or `null` if no selection exists. <br /> |

### getStateDescription

Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public CharSequence getStateDescription ()
```

Get the state description of this node.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/java/lang/CharSequence` | the state description. This value may be `null`. <br /> |

### getStructuredDataInfo

Added in [API level 37](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public AccessibilityNodeInfo.StructuredDataInfo getStructuredDataInfo ()
```

Gets additional structured data properties of this node. This is only populated for nodes
that offer additional structured data, like a mathematical expression.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.StructuredDataInfo` | A concrete subclass of `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.StructuredDataInfo` representing the type and additional structured data for this node, or `null` if this node does not have additional structured data attached. <br /> |

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setStructuredDataInfo(android.view.accessibility.AccessibilityNodeInfo.StructuredDataInfo)`

### getSupplementalDescription

Added in [API level 36](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public CharSequence getSupplementalDescription ()
```

Gets the supplemental description of this node. A supplemental description provides
brief supplemental information for this node, such as the purpose of the node when
that purpose is not conveyed within its textual representation. For example, if a
dropdown select has a purpose of setting font family, the supplemental description
could be "font family". If this node has children, its supplemental description serves
as additional information and is not intended to replace any existing information
in the subtree. This is different from the `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getContentDescription()` in that
this description is purely supplemental while a content description may be used
to replace a description for a node or its subtree that an assistive technology
would otherwise compute based on other properties of the node and its descendants.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/java/lang/CharSequence` | The supplemental description. This value may be `null`. <br /> |

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setSupplementalDescription(java.lang.CharSequence)`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getContentDescription()`

### getText

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public CharSequence getText ()
```

Gets the text of this node.


**Note:** If the text contains `https://developer.android.com/reference/android/text/style/ClickableSpan`s or `https://developer.android.com/reference/android/text/style/URLSpan`s,
these spans will have been replaced with ones whose `https://developer.android.com/reference/android/text/style/ClickableSpan#onClick(android.view.View)`
can be called from an `https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`. When called from a service, the
`https://developer.android.com/reference/android/view/View` argument is ignored and the corresponding span will be found on the view that
this `AccessibilityNodeInfo` represents and called with that view as its argument.


This treatment of `https://developer.android.com/reference/android/text/style/ClickableSpan`s means that the text returned from this method may
different slightly one passed to `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setText(java.lang.CharSequence)`, although they will be
equivalent according to `https://developer.android.com/reference/android/text/TextUtils#equals(java.lang.CharSequence,%20java.lang.CharSequence)`. The
`https://developer.android.com/reference/android/text/style/ClickableSpan#onClick(android.view.View)` of any spans, however, will generally not work outside
of an accessibility service.

<br />

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/java/lang/CharSequence` | The text. <br /> |

### getTextSelectionEnd

Added in [API level 18](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int getTextSelectionEnd ()
```

Gets the text selection end if text is selected.


If no text is selected, both this method and
`https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getTextSelectionStart()` return the same value:
the current location of the cursor.

<br />

<br />

| Returns ||
|---|---|
| `int` | The text selection end, the cursor location if there is no selection, or -1 if there is no text selection and no cursor. <br /> |

### getTextSelectionStart

Added in [API level 18](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int getTextSelectionStart ()
```

Gets the text selection start or the cursor position.


If no text is selected, both this method and
`https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getTextSelectionEnd()` return the same value:
the current location of the cursor.

<br />

<br />

| Returns ||
|---|---|
| `int` | The text selection start, the cursor location if there is no selection, or -1 if there is no text selection and no cursor. <br /> |

### getTooltipText

Added in [API level 28](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public CharSequence getTooltipText ()
```

Gets the tooltip text of this node.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/java/lang/CharSequence` | The tooltip text. This value may be `null`. <br /> |

### getTouchDelegateInfo

Added in [API level 29](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public AccessibilityNodeInfo.TouchDelegateInfo getTouchDelegateInfo ()
```

Get the `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.TouchDelegateInfo` for touch delegate behavior with the represented view.
It is possible for the same node to be pointed to by several regions. Use
`https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.TouchDelegateInfo#getRegionAt(int)` to get touch delegate target `https://developer.android.com/reference/android/graphics/Region`, and
`https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.TouchDelegateInfo#getTargetForRegion(android.graphics.Region)` for `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo` from
the given region.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.TouchDelegateInfo` | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.TouchDelegateInfo` or `null` if there are no touch delegates. <br /> |

### getTraversalAfter

Added in [API level 22](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public AccessibilityNodeInfo getTraversalAfter ()
```

Gets the node after which this one is visited in accessibility traversal.
A screen-reader must visit the content of the other node before the content
of this one.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo` | The succeeding node if such or `null`. <br /> |

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setTraversalAfter(android.view.View)`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setTraversalAfter(android.view.View,%20int)`

### getTraversalBefore

Added in [API level 22](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public AccessibilityNodeInfo getTraversalBefore ()
```

Gets the node before which this one is visited during traversal. A screen-reader
must visit the content of this node before the content of the one it precedes.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo` | The succeeding node if such or `null`. <br /> |

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setTraversalBefore(android.view.View)`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setTraversalBefore(android.view.View,%20int)`

### getUniqueId

Added in [API level 33](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public String getUniqueId ()
```

Gets the unique id of the node.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/java/lang/String` | The unique id. This value may be `null`. <br /> |

### getViewIdResourceName

Added in [API level 18](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public String getViewIdResourceName ()
```

Gets the fully qualified resource name of the source view's id.


**Note:** The primary usage of this API is for UI test automation
and in order to report the source view id of an `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo` the
client has to set the `https://developer.android.com/reference/android/accessibilityservice/AccessibilityServiceInfo#FLAG_REPORT_VIEW_IDS`
flag when configuring the `https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.

<br />

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/java/lang/String` | The id resource name. <br /> |

### getWindow

Added in [API level 21](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public AccessibilityWindowInfo getWindow ()
```

Gets the window to which this node belongs.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/view/accessibility/AccessibilityWindowInfo` | The window. <br /> |

**See also:**

- `https://developer.android.com/reference/android/accessibilityservice/AccessibilityService#getWindows()`

### getWindowId

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int getWindowId ()
```

Returns the id of the window that created this node.


**Note:** If this node comes from a window that is embedded in another window
using `https://developer.android.com/reference/android/view/SurfaceView` then the return value is the id of the window that embeds this
node's window.

<br />

| Returns ||
|---|---|
| `int` | The window id. <br /> |

### hasRequestInitialAccessibilityFocus

Added in [API level 34](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean hasRequestInitialAccessibilityFocus ()
```

Gets whether the node has `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setRequestInitialAccessibilityFocus(boolean)`.

<br />

| Returns ||
|---|---|
| `boolean` | True if the node has requested initial accessibility focus. <br /> |

### hashCode

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int hashCode ()
```

Returns a hash code value for the object. This method is
supported for the benefit of hash tables such as those provided by
`https://developer.android.com/reference/java/util/HashMap`.


The general contract of `hashCode` is:

- Whenever it is invoked on the same object more than once during an execution of a Java application, the `hashCode` method must consistently return the same integer, provided no information used in `equals` comparisons on the object is modified. This integer need not remain consistent from one execution of an application to another execution of the same application.
- If two objects are equal according to the `https://developer.android.com/reference/java/lang/Object#equals(java.lang.Object)` method, then calling the `hashCode` method on each of the two objects must produce the same integer result.
- It is *not* required that if two objects are unequal according to the `https://developer.android.com/reference/java/lang/Object#equals(java.lang.Object)` method, then calling the `hashCode` method on each of the two objects must produce distinct integer results. However, the programmer should be aware that producing distinct integer results for unequal objects may improve the performance of hash tables.

<br />

<br />

| Returns ||
|---|---|
| `int` | a hash code value for this object. <br /> |

### isAccessibilityDataSensitive

Added in [API level 34](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean isAccessibilityDataSensitive ()
```

Gets if the node's accessibility data is considered sensitive.

<br />

| Returns ||
|---|---|
| `boolean` | True if the node's data is considered sensitive, false otherwise. <br /> |

**See also:**

- `https://developer.android.com/reference/android/view/View#isAccessibilityDataSensitive()`

### isAccessibilityFocused

Added in [API level 16](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean isAccessibilityFocused ()
```

Gets whether this node is accessibility focused.

This is distinct from `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#isFocused()`, which is used to track system focus.
See `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_ACCESSIBILITY_FOCUS` for details.

<br />

| Returns ||
|---|---|
| `boolean` | True if the node is accessibility focused. <br /> |

### isCheckable

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean isCheckable ()
```

Gets whether this node is checkable.

<br />

| Returns ||
|---|---|
| `boolean` | True if the node is checkable. <br /> |

### isChecked

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)   
Deprecated in [API level
36](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean isChecked ()
```


**This method was deprecated
in API level 36.**   

Use `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getChecked()` instead.

Gets whether this node is checked. This is only meaningful
when `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#isCheckable()` returns `true`.

<br />

| Returns ||
|---|---|
| `boolean` | True if the node is checked. <br /> |

### isClickable

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean isClickable ()
```

Gets whether this node is clickable.

<br />

| Returns ||
|---|---|
| `boolean` | True if the node is clickable. <br /> |

### isContentInvalid

Added in [API level 19](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean isContentInvalid ()
```

Gets if the content of this node is invalid. For example,
a date is not well-formed.

<br />

| Returns ||
|---|---|
| `boolean` | If the node content is invalid. <br /> |

### isContextClickable

Added in [API level 23](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean isContextClickable ()
```

Gets whether this node is context clickable.

<br />

| Returns ||
|---|---|
| `boolean` | True if the node is context clickable. <br /> |

### isDismissable

Added in [API level 19](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean isDismissable ()
```

Gets if the node can be dismissed.

<br />

| Returns ||
|---|---|
| `boolean` | If the node can be dismissed. <br /> |

### isEditable

Added in [API level 18](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean isEditable ()
```

Gets if the node is editable.

<br />

| Returns ||
|---|---|
| `boolean` | True if the node is editable, false otherwise. <br /> |

### isEnabled

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean isEnabled ()
```

Gets whether this node is enabled.

<br />

| Returns ||
|---|---|
| `boolean` | True if the node is enabled. <br /> |

### isFieldRequired

Added in [API level 36](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean isFieldRequired ()
```

Gets whether a node representing a form field requires input or selection.

<br />

| Returns ||
|---|---|
| `boolean` | `true` if `this` node represents a form field that requires input or selection, `false` otherwise. <br /> |

### isFocusable

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean isFocusable ()
```

Gets whether this node is focusable.

In the View system, this typically maps to `https://developer.android.com/reference/android/view/View#isFocusable()`.

<br />

| Returns ||
|---|---|
| `boolean` | True if the node is focusable. <br /> |

### isFocused

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean isFocused ()
```

Gets whether this node is focused.

This is distinct from `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#isAccessibilityFocused()`, which is used by screen readers.
See `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_ACCESSIBILITY_FOCUS` for details.

<br />

| Returns ||
|---|---|
| `boolean` | True if the node is focused. <br /> |

### isGranularScrollingSupported

Added in [API level 35](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean isGranularScrollingSupported ()
```

Gets if the node supports granular scrolling.

<br />

| Returns ||
|---|---|
| `boolean` | True if all scroll actions that could support `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_ARGUMENT_SCROLL_AMOUNT_FLOAT` have done so, false otherwise. <br /> |

### isHeading

Added in [API level 28](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean isHeading ()
```

Returns whether node represents a heading.

**Note:** Returns `true` if either `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setHeading(boolean)`
marks this node as a heading or if the node has a `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.CollectionItemInfo` that marks
it as such, to accomodate apps that use the now-deprecated API.

<br />

<br />

| Returns ||
|---|---|
| `boolean` | `true` if the node is a heading, `false` otherwise. <br /> |

### isImportantForAccessibility

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean isImportantForAccessibility ()
```

Returns whether the node originates from a view considered important for accessibility.

<br />

| Returns ||
|---|---|
| `boolean` | `true` if the node originates from a view considered important for accessibility, `false` otherwise <br /> |

**See also:**

- `https://developer.android.com/reference/android/view/View#isImportantForAccessibility()`

### isLongClickable

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean isLongClickable ()
```

Gets whether this node is long clickable.

<br />

| Returns ||
|---|---|
| `boolean` | True if the node is long clickable. <br /> |

### isMultiLine

Added in [API level 19](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean isMultiLine ()
```

Gets if the node is a multi line editable text.

<br />

| Returns ||
|---|---|
| `boolean` | True if the node is multi line. <br /> |

### isPassword

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean isPassword ()
```

Gets whether this node is a password.

<br />

| Returns ||
|---|---|
| `boolean` | True if the node is a password. <br /> |

### isScreenReaderFocusable

Added in [API level 28](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean isScreenReaderFocusable ()
```

Returns whether the node is explicitly marked as a focusable unit by a screen reader. Note
that `false` indicates that it is not explicitly marked, not that the node is not
a focusable unit. Screen readers should generally use other signals, such as
`https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#isFocusable()`, or the presence of text in a node, to determine what should receive
focus.

<br />

| Returns ||
|---|---|
| `boolean` | `true` if the node is specifically marked as a focusable unit for screen readers, `false` otherwise. <br /> |

**See also:**

- `https://developer.android.com/reference/android/view/View#isScreenReaderFocusable()`

### isScrollable

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean isScrollable ()
```

Gets if the node is scrollable.

<br />

| Returns ||
|---|---|
| `boolean` | True if the node is scrollable, false otherwise. <br /> |

### isSelected

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean isSelected ()
```

Gets whether this node is selected.

<br />

| Returns ||
|---|---|
| `boolean` | True if the node is selected. <br /> |

### isShowingHintText

Added in [API level 26](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean isShowingHintText ()
```

Returns whether the node's text represents a hint for the user to enter text. It should only
be `true` if the node has editable text.

<br />

| Returns ||
|---|---|
| `boolean` | `true` if the text in the node represents a hint to the user, `false` otherwise. <br /> |

### isTextEntryKey

Added in [API level 29](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean isTextEntryKey ()
```

Returns whether node represents a text entry key that is part of a keyboard or keypad.

<br />

| Returns ||
|---|---|
| `boolean` | `true` if the node is a text entry key., `false` otherwise. <br /> |

### isTextSelectable

Added in [API level 33](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean isTextSelectable ()
```

Gets if the node has selectable text.


Services should use `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_SET_SELECTION` for selection. Editable text nodes must
also be selectable. But not all UIs will populate this field, so services should consider
'isTextSelectable \| isEditable' to ensure they don't miss nodes with selectable text.

<br />

<br />

| Returns ||
|---|---|
| `boolean` | True if the node has selectable text. <br /> |

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#isEditable()`

### isVisibleToUser

Added in [API level 16](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean isVisibleToUser ()
```

Gets whether this node is visible to the user.


Between `https://developer.android.com/reference/android/os/Build.VERSION_CODES#JELLY_BEAN` and
`https://developer.android.com/reference/android/os/Build.VERSION_CODES#Q`, this method may incorrectly return false when
magnification is enabled. On other versions, a node is considered visible even if it is not
on the screen because magnification is active.

<br />

<br />

| Returns ||
|---|---|
| `boolean` | Whether the node is visible to the user. <br /> |

### obtain

Added in [API level 16](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)   
Deprecated in [API level
33](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static AccessibilityNodeInfo obtain (View root, 
                int virtualDescendantId)
```


**This method was deprecated
in API level 33.**   

Object pooling has been discontinued. Create a new instance using the
constructor `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#AccessibilityNodeInfo(android.view.View,%20int)` instead.

Returns a cached instance if such is available otherwise a new one
and sets the source.

<br />

| Parameters ||
|---|---|
| `root` | `View`: The root of the virtual subtree. <br /> |
| `virtualDescendantId` | `int`: The id of the virtual descendant. <br /> |

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo` | An instance. <br /> |

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setSource(android.view.View,%20int)`

### obtain

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)   
Deprecated in [API level
33](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static AccessibilityNodeInfo obtain (AccessibilityNodeInfo info)
```


**This method was deprecated
in API level 33.**   

Object pooling has been discontinued. Create a new instance using the
constructor `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#AccessibilityNodeInfo(android.view.accessibility.AccessibilityNodeInfo)` instead.

Instantiates a new AccessibilityNodeInfo initialized from the given
`info`.

<br />

| Parameters ||
|---|---|
| `info` | `AccessibilityNodeInfo`: The other info. <br /> |

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo` | An instance. <br /> |

### obtain

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)   
Deprecated in [API level
33](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static AccessibilityNodeInfo obtain ()
```


**This method was deprecated
in API level 33.**   

Object pooling has been discontinued. Create a new instance using the
constructor `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#AccessibilityNodeInfo()` instead.

Instantiates a new AccessibilityNodeInfo.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo` | An instance. <br /> |

### obtain

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)   
Deprecated in [API level
33](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static AccessibilityNodeInfo obtain (View source)
```


**This method was deprecated
in API level 33.**   

Object pooling has been discontinued. Create a new instance using the
constructor `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#AccessibilityNodeInfo(android.view.View)` instead.

Returns a cached instance if such is available otherwise a new one
and sets the source.

<br />

| Parameters ||
|---|---|
| `source` | `View`: The source view. <br /> |

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo` | An instance. <br /> |

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setSource(android.view.View)`

### performAction

Added in [API level 16](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean performAction (int action, 
                Bundle arguments)
```

Performs an action on the node.


**Note:** An action can be performed only if the request is made
from an `https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.

<br />

<br />

| Parameters ||
|---|---|
| `action` | `int`: The action to perform. <br /> |
| `arguments` | `Bundle`: A bundle with additional arguments. <br /> |

| Returns ||
|---|---|
| `boolean` | True if the action was performed. <br /> |

| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called outside of an AccessibilityService. |

### performAction

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean performAction (int action)
```

Performs an action on the node.


**Note:** An action can be performed only if the request is made
from an `https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.

<br />

<br />

| Parameters ||
|---|---|
| `action` | `int`: The action to perform. <br /> |

| Returns ||
|---|---|
| `boolean` | True if the action was performed. <br /> |

| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called outside of an AccessibilityService. |

### recycle

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)   
Deprecated in [API level
33](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public void recycle ()
```


**This method was deprecated
in API level 33.**   

Object pooling has been discontinued. Calling this function now will have
no effect.

Would previously return an instance back to be reused.

<br />

### refresh

Added in [API level 18](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean refresh ()
```

Refreshes this info with the latest state of the view it represents.

<br />

| Returns ||
|---|---|
| `boolean` | `true` if the refresh succeeded. `false` if the `https://developer.android.com/reference/android/view/View` represented by this node is no longer in the view tree (and thus this node is obsolete). <br /> |

### refreshWithExtraData

Added in [API level 26](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean refreshWithExtraData (String extraDataKey, 
                Bundle args)
```

Refreshes this info with the latest state of the view it represents, and request new
data be added by the View.

<br />

| Parameters ||
|---|---|
| `extraDataKey` | `String`: The extra data requested. Data that must be requested with this mechanism is generally expensive to retrieve, so should only be requested when needed. See `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#EXTRA_DATA_RENDERING_INFO_KEY`, `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#EXTRA_DATA_TEXT_CHARACTER_LOCATION_KEY`, `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getAvailableExtraData()` and `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getExtraRenderingInfo()`. <br /> |
| `args` | `Bundle`: A bundle of arguments for the request. These depend on the particular request. <br /> |

| Returns ||
|---|---|
| `boolean` | `true` if the refresh succeeded. `false` if the `https://developer.android.com/reference/android/view/View` represented by this node is no longer in the view tree (and thus this node is obsolete). <br /> |

### removeAction

Added in [API level 21](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean removeAction (AccessibilityNodeInfo.AccessibilityAction action)
```

Removes an action that can be performed on the node. If the action was
not already added to the node, calling this method has no effect.


**Note:** Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.

<br />

<br />

| Parameters ||
|---|---|
| `action` | `AccessibilityNodeInfo.AccessibilityAction`: The action to be removed. <br /> |

| Returns ||
|---|---|
| `boolean` | The action removed from the list of actions. <br /> |

| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService. |

### removeAction

Added in [API level 21](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)   
Deprecated in [API level
21](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public void removeAction (int action)
```


**This method was deprecated
in API level 21.**   

Use `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#removeAction(android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction)`

Removes an action that can be performed on the node. If the action was
not already added to the node, calling this method has no effect.


**Note:** Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.

<br />

<br />

| Parameters ||
|---|---|
| `action` | `int`: The action to be removed. <br /> |

| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService. |

### removeChild

Added in [API level 21](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean removeChild (View root, 
                int virtualDescendantId)
```

Removes a virtual child which is a descendant of the given
`root`. If the child was not previously added to the node,
calling this method has no effect.

<br />

| Parameters ||
|---|---|
| `root` | `View`: The root of the virtual subtree. <br /> |
| `virtualDescendantId` | `int`: The id of the virtual child. <br /> |

| Returns ||
|---|---|
| `boolean` | true if the child was present <br /> |

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#addChild(android.view.View,%20int)`

### removeChild

Added in [API level 21](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean removeChild (View child)
```

Removes a child. If the child was not previously added to the node,
calling this method has no effect.


**Note:** Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.

<br />

<br />

| Parameters ||
|---|---|
| `child` | `View`: The child. <br /> |

| Returns ||
|---|---|
| `boolean` | true if the child was present <br /> |

| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService. |

### removeLabeledBy

Added in [API level 36](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean removeLabeledBy (View root, 
                int virtualDescendantId)
```

Removes a label which is a virtual descendant of the given
`root`. If `virtualDescendantId` is
`https://developer.android.com/reference/android/view/View#NO_ID` the root is set as the label. If the label
was not previously added to the node, calling this method has
no effect.

<br />

| Parameters ||
|---|---|
| `root` | `View`: The root of the virtual subtree. This value cannot be `null`. <br /> |
| `virtualDescendantId` | `int`: The id of the virtual node which serves as this node's label. <br /> |

| Returns ||
|---|---|
| `boolean` | true if the label was present <br /> |

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#addLabeledBy(android.view.View,%20int)`

### removeLabeledBy

Added in [API level 36](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean removeLabeledBy (View label)
```

Removes a label. If the label was not previously added to the node,
calling this method has no effect.


**Note:** Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.

<br />

<br />

| Parameters ||
|---|---|
| `label` | `View`: The node which serves as this node's label. This value cannot be `null`. <br /> |

| Returns ||
|---|---|
| `boolean` | true if the label was present <br /> |

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#addLabeledBy(android.view.View)`

### setAccessibilityDataSensitive

Added in [API level 34](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public void setAccessibilityDataSensitive (boolean accessibilityDataSensitive)
```

Sets whether this node's accessibility data is considered sensitive.


**Note:** Cannot be called from an `https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.

<br />

<br />

| Parameters ||
|---|---|
| `accessibilityDataSensitive` | `boolean`: True if the node's accessibility data is considered sensitive. <br /> |

| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService. |

**See also:**

- `https://developer.android.com/reference/android/view/View#setAccessibilityDataSensitive(int)`

### setAccessibilityFocused

Added in [API level 16](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public void setAccessibilityFocused (boolean focused)
```

Sets whether this node is accessibility focused.


**Note:** Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.

The UI element updating this property should send an event of
`https://developer.android.com/reference/android/view/accessibility/AccessibilityEvent#TYPE_VIEW_ACCESSIBILITY_FOCUSED`
or `https://developer.android.com/reference/android/view/accessibility/AccessibilityEvent#TYPE_VIEW_ACCESSIBILITY_FOCUS_CLEARED` if its
accessibility-focused state changes.

<br />

| Parameters ||
|---|---|
| `focused` | `boolean`: True if the node is accessibility focused. <br /> |

| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService. |

### setAvailableExtraData

Added in [API level 26](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public void setAvailableExtraData (List<String> extraDataKeys)
```

Set the extra data available for this node.


**Note:** When a `View` passes in a non-empty list, it promises that
it will populate the node's extras with corresponding pieces of information in
`https://developer.android.com/reference/android/view/View#addExtraDataToAccessibilityNodeInfo(android.view.accessibility.AccessibilityNodeInfo,%20java.lang.String,%20android.os.Bundle)`.


**Note:** Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.

<br />

| Parameters ||
|---|---|
| `extraDataKeys` | `List`: A list of types of extra data that are available. <br /> |

| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService. |

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getAvailableExtraData()`

### setBoundsInParent

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)   
Deprecated in [API level
29](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public void setBoundsInParent (Rect bounds)
```


**This method was deprecated
in API level 29.**   

Accessibility services should not care about these bounds.

Sets the node bounds in the viewParent's coordinates.
`https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getParent()` does not represent the source's viewParent.
Instead it represents the result of `https://developer.android.com/reference/android/view/View#getParentForAccessibility()`,
which returns the closest ancestor where `https://developer.android.com/reference/android/view/View#isImportantForAccessibility()` is true.
So this method is not reliable.


**Note:** Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.

<br />

<br />

| Parameters ||
|---|---|
| `bounds` | `Rect`: The node bounds. <br /> |

| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService. |

### setBoundsInScreen

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public void setBoundsInScreen (Rect bounds)
```

Sets the node bounds in screen coordinates.


**Note:** Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.

<br />

<br />

| Parameters ||
|---|---|
| `bounds` | `Rect`: The node bounds. <br /> |

| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService. |

### setBoundsInWindow

Added in [API level 34](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public void setBoundsInWindow (Rect bounds)
```

Sets the node bounds in window coordinates.


**Note:** Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.

<br />

<br />

| Parameters ||
|---|---|
| `bounds` | `Rect`: The node bounds. This value cannot be `null`. <br /> |

| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService. |

### setCanOpenPopup

Added in [API level 19](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public void setCanOpenPopup (boolean opensPopup)
```

Sets if this node opens a popup or a dialog.


**Note:** Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.

<br />

<br />

| Parameters ||
|---|---|
| `opensPopup` | `boolean`: If the the node opens a popup. <br /> |

### setCheckable

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public void setCheckable (boolean checkable)
```

Sets whether this node is checkable.


**Note:** Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.

<br />

<br />

| Parameters ||
|---|---|
| `checkable` | `boolean`: True if the node is checkable. <br /> |

| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService. |

### setChecked

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)   
Deprecated in [API level
36](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public void setChecked (boolean checked)
```


**This method was deprecated
in API level 36.**   

Use `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setChecked(int)` instead.

Sets whether this node is checked. This is only meaningful
when `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#isCheckable()` returns `true`.


**Note:** Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.

<br />

<br />

| Parameters ||
|---|---|
| `checked` | `boolean`: True if the node is checked. <br /> |

| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService. |

### setChecked

Added in [API level 36](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public void setChecked (int checked)
```

Sets the checked state of this node. This is only meaningful
when `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#isCheckable()` returns `true`.


**Note:** Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.

<br />

<br />

| Parameters ||
|---|---|
| `checked` | `int`: The checked state. One of - `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#CHECKED_STATE_FALSE` - `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#CHECKED_STATE_TRUE` - `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#CHECKED_STATE_PARTIAL` . Value is one of the following: - `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#CHECKED_STATE_FALSE` - `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#CHECKED_STATE_TRUE` - `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#CHECKED_STATE_PARTIAL` |

| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalArgumentException` | if checked is not one of `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#CHECKED_STATE_FALSE`, `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#CHECKED_STATE_TRUE`, or `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#CHECKED_STATE_PARTIAL`. |
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService. |

**See also:**

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setCheckable(boolean)`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#isCheckable()`
- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getChecked()`

### setClassName

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public void setClassName (CharSequence className)
```

Sets the class this node comes from.


**Note:** Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.

<br />

<br />

| Parameters ||
|---|---|
| `className` | `CharSequence`: The class name. <br /> |

| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService. |

### setClickable

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public void setClickable (boolean clickable)
```

Sets whether this node is clickable.


**Note:** Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.

<br />

<br />

| Parameters ||
|---|---|
| `clickable` | `boolean`: True if the node is clickable. <br /> |

| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService. |

### setCollectionInfo

Added in [API level 19](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public void setCollectionInfo (AccessibilityNodeInfo.CollectionInfo collectionInfo)
```

Sets the collection info if the node is a collection. A collection
child is always a collection item.


**Note:** Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.

<br />

<br />

| Parameters ||
|---|---|
| `collectionInfo` | `AccessibilityNodeInfo.CollectionInfo`: The collection info. <br /> |

### setCollectionItemInfo

Added in [API level 19](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public void setCollectionItemInfo (AccessibilityNodeInfo.CollectionItemInfo collectionItemInfo)
```

Sets the collection item info if the node is a collection item. A collection
item is always a child of a collection.


**Note:** Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.

<br />

<br />

| Parameters ||
|---|---|
| `collectionItemInfo` | `AccessibilityNodeInfo.CollectionItemInfo` <br /> |

### setContainerTitle

Added in [API level 34](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public void setContainerTitle (CharSequence containerTitle)
```

Sets the container title for app-developer-defined container which can be any type of
ViewGroup or layout.
Container title will be used to group together related controls, similar to HTML fieldset.
Or container title may identify a large piece of the UI that is visibly grouped together,
such as a toolbar or a card, etc.


Container title helps to assist in navigation across containers and other groups.
For example, a screen reader may use this to determine where to put accessibility focus.


Container title is different from pane title`https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setPaneTitle(java.lang.CharSequence)` which indicates that the
node represents a window or activity.


Example: An app can set container titles on several non-modal menus, containing TextViews
or ImageButtons that have content descriptions, text, etc. Screen readers can quickly
switch accessibility focus among menus instead of child views. Other accessibility-services
can easily find the menu.

<br />

<br />

| Parameters ||
|---|---|
| `containerTitle` | `CharSequence`: The container title that is associated with a ViewGroup/Layout on the screen. This value may be `null`. <br /> |

### setContentDescription

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public void setContentDescription (CharSequence contentDescription)
```

Sets the content description of this node.


**Note:** Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.

<br />

<br />

| Parameters ||
|---|---|
| `contentDescription` | `CharSequence`: The content description. <br /> |

| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService. |

### setContentInvalid

Added in [API level 19](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public void setContentInvalid (boolean contentInvalid)
```

Sets if the content of this node is invalid. For example,
a date is not well-formed.


**Note:** Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.

<br />

<br />

| Parameters ||
|---|---|
| `contentInvalid` | `boolean`: If the node content is invalid. <br /> |

### setContextClickable

Added in [API level 23](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public void setContextClickable (boolean contextClickable)
```

Sets whether this node is context clickable.


**Note:** Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`. This class is made immutable
before being delivered to an AccessibilityService.

<br />

<br />

| Parameters ||
|---|---|
| `contextClickable` | `boolean`: True if the node is context clickable. <br /> |

| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService. |

### setDismissable

Added in [API level 19](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public void setDismissable (boolean dismissable)
```

Sets if the node can be dismissed.


**Note:** Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.

<br />

<br />

| Parameters ||
|---|---|
| `dismissable` | `boolean`: If the node can be dismissed. <br /> |

### setDrawingOrder

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public void setDrawingOrder (int drawingOrderInParent)
```

Set the drawing order of the view corresponding it this node.


**Note:** Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.

<br />

<br />

| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService. |

### setEditable

Added in [API level 18](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public void setEditable (boolean editable)
```

Sets whether this node is editable.


**Note:** Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.

<br />

<br />

| Parameters ||
|---|---|
| `editable` | `boolean`: True if the node is editable. <br /> |

| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService. |

### setEnabled

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public void setEnabled (boolean enabled)
```

Sets whether this node is enabled.


**Note:** Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.

<br />

<br />

| Parameters ||
|---|---|
| `enabled` | `boolean`: True if the node is enabled. <br /> |

| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService. |

### setError

Added in [API level 21](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public void setError (CharSequence error)
```

Sets the error text of this node.


**Note:** Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.

<br />

<br />

| Parameters ||
|---|---|
| `error` | `CharSequence`: The error text. <br /> |

| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService. |

### setExpandedState

Added in [API level 36](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public void setExpandedState (int state)
```

Sets the expanded state of the node.

**Note:** Cannot be called from an `https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`. This class is made immutable before being
delivered to an `https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.

<br />

| Parameters ||
|---|---|
| `state` | `int`: new expanded state of this node. Value is one of the following: - `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#EXPANDED_STATE_UNDEFINED` - `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#EXPANDED_STATE_COLLAPSED` - `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#EXPANDED_STATE_PARTIAL` - `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#EXPANDED_STATE_FULL` |

| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalArgumentException` | If state is not one of: - `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#EXPANDED_STATE_UNDEFINED` - `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#EXPANDED_STATE_COLLAPSED` - `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#EXPANDED_STATE_PARTIAL` - `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#EXPANDED_STATE_FULL` |
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService |

### setExtraRenderingInfo

Added in [API level 37](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public void setExtraRenderingInfo (AccessibilityNodeInfo.ExtraRenderingInfo extraRenderingInfo)
```

Sets the extra rendering info, `` extraRenderingInfo`, if the node is meant to be
refreshed with extra data.
` ``

``` ``
Note: Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.
`` ```

<br />

<br />

``` ``

| Parameters ||
|---|---|
| `extraRenderingInfo` | `AccessibilityNodeInfo.ExtraRenderingInfo`: The `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.ExtraRenderingInfo`, or `null` to remove a previously set value. <br /> |


`` ```````` ````


### setFieldRequired


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setFieldRequired (boolean required)
```


Sets whether `this` node represents a form field that requires input or selection.


Note: Cannot be called from an AccessibilityService. This class is made
immutable before being delivered to an AccessibilityService.

<br />


| Parameters ||
|---|---|
| `required` | `boolean`: `true` if input or selection of this node should be required, `false` otherwise. <br /> |


| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService |


### setFocusable


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setFocusable (boolean focusable)
```


Sets whether this node is focusable.


Note: Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.


To mark a node as explicitly focusable for a screen reader, consider using
`https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setScreenReaderFocusable(boolean)` instead.

<br />


| Parameters ||
|---|---|
| `focusable` | `boolean`: True if the node is focusable. <br /> |


| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService. |


### setFocused


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setFocused (boolean focused)
```


Sets whether this node is focused.


Note: Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.


<br />


<br />


| Parameters ||
|---|---|
| `focused` | `boolean`: True if the node is focused. <br /> |


| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService. |


### setGranularScrollingSupported


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setGranularScrollingSupported (boolean granularScrollingSupported)
```


Sets if the node supports granular scrolling. This should be set to true if all scroll
actions which could support `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#ACTION_ARGUMENT_SCROLL_AMOUNT_FLOAT` have done so.


Note: Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.


<br />


<br />


| Parameters ||
|---|---|
| `granularScrollingSupported` | `boolean`: True if the node supports granular scrolling, false otherwise. <br /> |


| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService. |


### setHeading


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setHeading (boolean isHeading)
```


Sets whether the node represents a heading.


Note: Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.


<br />


<br />


| Parameters ||
|---|---|
| `isHeading` | `boolean`: `true` if the node is a heading, `false` otherwise. <br /> |


### setHintText


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setHintText (CharSequence hintText)
```


Sets the hint text of this node. Only applies to nodes where text can be entered.


Note: Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.


<br />


<br />


| Parameters ||
|---|---|
| `hintText` | `CharSequence`: The hint text for this mode. <br /> |


| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService. |


### setImportantForAccessibility


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setImportantForAccessibility (boolean important)
```


Sets whether the node is considered important for accessibility.


Note: Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.


<br />


<br />


| Parameters ||
|---|---|
| `important` | `boolean`: `true` if the node is considered important for accessibility, `false` otherwise <br /> |


### setInputType


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setInputType (int inputType)
```


Sets the input type of the source as defined by `https://developer.android.com/reference/android/text/InputType`.


Note: Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an
AccessibilityService.


<br />


<br />


| Parameters ||
|---|---|
| `inputType` | `int`: The input type. <br /> |


| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService. |


### setLabelFor


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels

Deprecated in
https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setLabelFor (View root,
int virtualDescendantId)
```


This method was deprecated
in API level 36.

Use `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#addLabeledBy(android.view.View)` on the labeled node instead,
since `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getLabeledByList()` and `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getLabeledBy()` on the
labeled node are not automatically populated when this method is used.


Sets the view for which the view represented by this info serves as a
label for accessibility purposes. If `virtualDescendantId`
is `https://developer.android.com/reference/android/view/View#NO_ID` the root is set as the labeled.


A virtual descendant is an imaginary View that is reported as a part of the view
hierarchy for accessibility purposes. This enables custom views that draw complex
content to report themselves as a tree of virtual views, thus conveying their
logical structure.


Note: Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.


<br />


<br />


| Parameters ||
|---|---|
| `root` | `View`: The root whose virtual descendant serves as a label. <br /> |
| `virtualDescendantId` | `int`: The id of the virtual descendant. <br /> |


### setLabelFor


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels

Deprecated in
https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setLabelFor (View labeled)
```


This method was deprecated
in API level 36.

Use `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#addLabeledBy(android.view.View)` on the labeled node instead,
since `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getLabeledByList()` and `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getLabeledBy()` on the
labeled node are not automatically populated when this method is used.


Sets the view for which the view represented by this info serves as a
label for accessibility purposes.

<br />


| Parameters ||
|---|---|
| `labeled` | `View`: The view for which this info serves as a label. <br /> |


### setLabeledBy


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels

Deprecated in
https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setLabeledBy (View label)
```


This method was deprecated
in API level 36.

Use `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#addLabeledBy(android.view.View)` or `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#removeLabeledBy(android.view.View)` instead.


Sets the view which serves as the label of the view represented by
this info for accessibility purposes.

<br />


| Parameters ||
|---|---|
| `label` | `View`: The view that labels this node's source. <br /> |


### setLabeledBy


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels

Deprecated in
https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setLabeledBy (View root,
int virtualDescendantId)
```


This method was deprecated
in API level 36.

Use `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#addLabeledBy(android.view.View,%20int)` or `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#removeLabeledBy(android.view.View,%20int)`
instead.


Sets the view which serves as the label of the view represented by
this info for accessibility purposes. If `virtualDescendantId`
is `https://developer.android.com/reference/android/view/View#NO_ID` the root is set as the label.


A virtual descendant is an imaginary View that is reported as a part of the view
hierarchy for accessibility purposes. This enables custom views that draw complex
content to report themselves as a tree of virtual views, thus conveying their
logical structure.


Note: Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.


<br />


<br />


| Parameters ||
|---|---|
| `root` | `View`: The root whose virtual descendant labels this node's source. <br /> |
| `virtualDescendantId` | `int`: The id of the virtual descendant. <br /> |


### setLiveRegion


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setLiveRegion (int mode)
```


Sets the node's live region mode.


Note: Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`. This class is
made immutable before being delivered to an AccessibilityService.

<br />


| Parameters ||
|---|---|
| `mode` | `int`: The live region mode, or `https://developer.android.com/reference/android/view/View#ACCESSIBILITY_LIVE_REGION_NONE` if the view is not a live region. <br /> |


See also:


- `https://developer.android.com/reference/android/view/View#setAccessibilityLiveRegion(int)`


### setLongClickable


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setLongClickable (boolean longClickable)
```


Sets whether this node is long clickable.


Note: Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.


<br />


<br />


| Parameters ||
|---|---|
| `longClickable` | `boolean`: True if the node is long clickable. <br /> |


| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService. |


### setMaxTextLength


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setMaxTextLength (int max)
```


Sets the maximum text length, or -1 for no limit.


Typically used to indicate that an editable text field has a limit on
the number of characters entered.


Note: Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.

<br />


| Parameters ||
|---|---|
| `max` | `int`: The maximum text length. <br /> |


| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService. |


See also:


- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getMaxTextLength()`


### setMinDurationBetweenContentChanges


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setMinDurationBetweenContentChanges (Duration duration)
```


Sets the minimum time duration between two content change events, which is used in throttling
content change events in accessibility services.


Example: An app can set MinMillisBetweenContentChanges as 1 min for a view which sends
content change events to accessibility services one event per second.
Accessibility service will throttle those content change events and only handle one event
per minute for that view.


Example UI elements that frequently update and may benefit from a duration are progress bars,
timers, and stopwatches.


<br />


<br />


| Parameters ||
|---|---|
| `duration` | `Duration`: the minimum duration between content change events. Negative duration would be treated as zero. This value cannot be `null`. <br /> |


See also:


- `https://developer.android.com/reference/android/view/accessibility/AccessibilityEvent#TYPE_WINDOW_CONTENT_CHANGED`

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityEvent#getContentChangeTypes()`


### setMovementGranularities


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setMovementGranularities (int granularities)
```


Sets the movement granularities for traversing the text of this node.


Note: Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.


<br />


<br />


| Parameters ||
|---|---|
| `granularities` | `int`: The bit mask with granularities. <br /> |


| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService. |


### setMultiLine


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setMultiLine (boolean multiLine)
```


Sets if the node is a multi line editable text.


Note: Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.


<br />


<br />


| Parameters ||
|---|---|
| `multiLine` | `boolean`: True if the node is multi line. <br /> |


### setPackageName


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setPackageName (CharSequence packageName)
```


Sets the package this node comes from.


Note: Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.


<br />


<br />


| Parameters ||
|---|---|
| `packageName` | `CharSequence`: The package name. <br /> |


| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService. |


### setPaneTitle


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setPaneTitle (CharSequence paneTitle)
```


If this node represents a visually distinct region of the screen that may update separately
from the rest of the window, it is considered a pane. Set the pane title to indicate that
the node is a pane, and to provide a title for it.


Note: Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.


<br />


<br />


| Parameters ||
|---|---|
| `paneTitle` | `CharSequence`: The title of the pane represented by this node. This value may be `null`. <br /> |


### setParent


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setParent (View root,
int virtualDescendantId)
```


Sets the parent to be a virtual descendant of the given `root`.
If `virtualDescendantId` equals to `https://developer.android.com/reference/android/view/View#NO_ID` the root
is set as the parent.


A virtual descendant is an imaginary View that is reported as a part of the view
hierarchy for accessibility purposes. This enables custom views that draw complex
content to report them selves as a tree of virtual views, thus conveying their
logical structure.


Note: Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.


<br />


<br />


| Parameters ||
|---|---|
| `root` | `View`: The root of the virtual subtree. <br /> |
| `virtualDescendantId` | `int`: The id of the virtual descendant. <br /> |


### setParent


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setParent (View parent)
```


Sets the parent.


Note: Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.


<br />


<br />


| Parameters ||
|---|---|
| `parent` | `View`: The parent. <br /> |


| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService. |


### setPassword


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setPassword (boolean password)
```


Sets whether this node is a password.


Note: Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.


<br />


<br />


| Parameters ||
|---|---|
| `password` | `boolean`: True if the node is a password. <br /> |


| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService. |


### setQueryFromAppProcessEnabled


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setQueryFromAppProcessEnabled (View view,
boolean enabled)
```


Connects this node to the View's root so that operations on this node can query the entire
`https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo` tree and perform accessibility actions on nodes.


Testing or debugging tools should create this `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo` node using
`https://developer.android.com/reference/android/view/View#createAccessibilityNodeInfo()` or `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeProvider` and call this
method, then navigate and interact with the node tree by calling methods on the node.
Calling this method more than once on the same node is a no-op. After calling this method,
all nodes linked to this node (children, ancestors, etc.) are also queryable.


Here "query" refers to the following node operations:


- check properties of this node (example: `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#isScrollable()`)


- find and query children (example: `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getChild(int)`)


- find and query the parent (example: `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getParent()`)


- find focus (examples: `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#findFocus(int)`, `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#focusSearch(int)`)


- find and query other nodes (example: `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#findAccessibilityNodeInfosByText(java.lang.String)`,
`https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#findAccessibilityNodeInfosByViewId(java.lang.String)`)


- perform actions (example: `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#performAction(int)`)


-
This is intended for short-lived inspections from testing or debugging tools in the app
process, as operations on this node tree will only succeed as long as the associated
view hierarchy remains attached to a window. `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo` objects can
quickly become out of sync with their corresponding `https://developer.android.com/reference/android/view/View` objects; if you wish to
inspect a changed or different view hierarchy then create a new node from any view in that
hierarchy and call this method on that new node, instead of disabling & re-enabling the
connection on the previous node.


| Parameters ||
|---|---|
| `view` | `View`: The view that generated this node, or any view in the same view-root hierarchy. This value cannot be `null`. <br /> |
| `enabled` | `boolean`: Whether to enable (true) or disable (false) querying from the app process. <br /> |


| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an `https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`, or if provided a `https://developer.android.com/reference/android/view/View` that is not attached to a window. |


### setRangeInfo


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setRangeInfo (AccessibilityNodeInfo.RangeInfo rangeInfo)
```


Sets the range info if this node is a range.


Note: Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.


<br />


<br />


| Parameters ||
|---|---|
| `rangeInfo` | `AccessibilityNodeInfo.RangeInfo`: The range info. <br /> |


### setRequestInitialAccessibilityFocus


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setRequestInitialAccessibilityFocus (boolean requestInitialAccessibilityFocus)
```


Sets whether the node has requested initial accessibility focus.


If the node `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#hasRequestInitialAccessibilityFocus()`, this node would be one of
candidates to be accessibility focused when the window appears.


Note: Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.


<br />


<br />


| Parameters ||
|---|---|
| `requestInitialAccessibilityFocus` | `boolean`: True if the node requests to receive initial accessibility focus. <br /> |


| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService. |


### setScreenReaderFocusable


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setScreenReaderFocusable (boolean screenReaderFocusable)
```


Sets whether the node should be considered a focusable unit by a screen reader.


Note: Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.


This can be used to
https://developer.android.com/guide/topics/ui/accessibility/principles#content-groups


<br />


<br />


| Parameters ||
|---|---|
| `screenReaderFocusable` | `boolean`: `true` if the node is a focusable unit for screen readers, `false` otherwise. <br /> |


### setScrollable


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setScrollable (boolean scrollable)
```


Sets if the node is scrollable.


Note: Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.


<br />


<br />


| Parameters ||
|---|---|
| `scrollable` | `boolean`: True if the node is scrollable, false otherwise. <br /> |


| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService. |


### setSelected


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setSelected (boolean selected)
```


Sets whether this node is selected.


Note: Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.


<br />


<br />


| Parameters ||
|---|---|
| `selected` | `boolean`: True if the node is selected. <br /> |


| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService. |


### setSelection


Added in https://developer.android.com/topic/libraries/support-library/revisions


```
public void setSelection (AccessibilityNodeInfo.Selection selection)
```


Sets the extended selection, which is a representation of selection that spans multiple nodes
that exist within the subtree of the node defining selection.


Note: The start and end `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.SelectionPosition` of the provided `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.Selection`
should be constructed with `this` node or a descendant of it.


Note: `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setFocusable(boolean)` and
`https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setFocused(boolean)` should both be called with `true`
before setting the selection in order to make `this` node a candidate to
contain a selection.


Note: Cannot be called from an AccessibilityService. This class is made immutable
before being delivered to an AccessibilityService.

<br />


| Parameters ||
|---|---|
| `selection` | `AccessibilityNodeInfo.Selection`: The extended selection within the node's subtree, or `null` if no selection exists. <br /> |


| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService |


See also:


- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.AccessibilityAction#ACTION_SET_EXTENDED_SELECTION`


### setShowingHintText


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setShowingHintText (boolean showingHintText)
```


Sets whether the node's text represents a hint for the user to enter text. It should only
be `true` if the node has editable text.


Note: Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.


<br />


<br />


| Parameters ||
|---|---|
| `showingHintText` | `boolean`: `true` if the text in the node represents a hint to the user, `false` otherwise. <br /> |


### setSource


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setSource (View source)
```


Sets the source.


Note: Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.


<br />


<br />


| Parameters ||
|---|---|
| `source` | `View`: The info source. <br /> |


### setSource


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setSource (View root,
int virtualDescendantId)
```


Sets the source to be a virtual descendant of the given `root`.
If `virtualDescendantId` is `https://developer.android.com/reference/android/view/View#NO_ID` the root
is set as the source.


A virtual descendant is an imaginary View that is reported as a part of the view
hierarchy for accessibility purposes. This enables custom views that draw complex
content to report themselves as a tree of virtual views, thus conveying their
logical structure.


Note: Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.


<br />


<br />


| Parameters ||
|---|---|
| `root` | `View`: The root of the virtual subtree. <br /> |
| `virtualDescendantId` | `int`: The id of the virtual descendant. <br /> |


### setStateDescription


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setStateDescription (CharSequence stateDescription)
```


Sets the state description of this node.


Note: Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.


<br />


<br />


| Parameters ||
|---|---|
| `stateDescription` | `CharSequence`: the state description of this node. This value may be `null`. <br /> |


| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService. |


### setStructuredDataInfo


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setStructuredDataInfo (AccessibilityNodeInfo.StructuredDataInfo info)
```


Sets additional structured data properties of this node, such as for a mathematical
expression.

<br />


| Parameters ||
|---|---|
| `info` | `AccessibilityNodeInfo.StructuredDataInfo`: The `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.StructuredDataInfo` object (e.g., an instance of `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.MathInfo`) describing the node. This value may be `null`. <br /> |


See also:


- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getStructuredDataInfo()`


### setSupplementalDescription


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setSupplementalDescription (CharSequence supplementalDescription)
```


Sets the supplemental description of this node. A supplemental description provides
brief supplemental information for this node, such as the purpose of the node when
that purpose is not conveyed within its textual representation. For example, if a
dropdown select has a purpose of setting font family, the supplemental description
could be "font family". If this node has children, its supplemental description serves
as additional information and is not intended to replace any existing information
in the subtree. This is different from the `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setContentDescription(java.lang.CharSequence)`
in that this description is purely supplemental while a content description may be used
to replace a description for a node or its subtree that an assistive technology
would otherwise compute based on other properties of the node and its descendants.


Note: Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.

<br />


| Parameters ||
|---|---|
| `supplementalDescription` | `CharSequence`: The supplemental description. This value may be `null`. <br /> |


| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService. |


See also:


- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getSupplementalDescription()`

- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#setContentDescription(java.lang.CharSequence)`


### setText


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setText (CharSequence text)
```


Sets the text of this node.


Note: Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.


<br />


<br />


| Parameters ||
|---|---|
| `text` | `CharSequence`: The text. <br /> |


| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService. |


### setTextEntryKey


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setTextEntryKey (boolean isTextEntryKey)
```


Sets whether the node represents a text entry key that is part of a keyboard or keypad.


Note: Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.


<br />


<br />


| Parameters ||
|---|---|
| `isTextEntryKey` | `boolean`: `true` if the node is a text entry key, `false` otherwise. <br /> |


### setTextSelectable


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setTextSelectable (boolean selectableText)
```


Sets if the node has selectable text.


Note: Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.


<br />


<br />


| Parameters ||
|---|---|
| `selectableText` | `boolean`: True if the node has selectable text, false otherwise. <br /> |


| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService. |


### setTextSelection


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setTextSelection (int start,
int end)
```


Sets the text selection start and end.


Note: Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.


<br />


<br />


| Parameters ||
|---|---|
| `start` | `int`: The text selection start. <br /> |
| `end` | `int`: The text selection end. <br /> |


| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService. |


### setTooltipText


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setTooltipText (CharSequence tooltipText)
```


Sets the tooltip text of this node.


Note: Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.


<br />


<br />


| Parameters ||
|---|---|
| `tooltipText` | `CharSequence`: The tooltip text. This value may be `null`. <br /> |


| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService. |


### setTouchDelegateInfo


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setTouchDelegateInfo (AccessibilityNodeInfo.TouchDelegateInfo delegatedInfo)
```


Set touch delegate info if the represented view has a `https://developer.android.com/reference/android/view/TouchDelegate`.


Note: Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an
AccessibilityService.


<br />


<br />


| Parameters ||
|---|---|
| `delegatedInfo` | `AccessibilityNodeInfo.TouchDelegateInfo`: `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.TouchDelegateInfo` returned from `https://developer.android.com/reference/android/view/TouchDelegate#getTouchDelegateInfo()`. This value cannot be `null`. <br /> |


| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService. |


### setTraversalAfter


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setTraversalAfter (View view)
```


Sets the view whose node is visited after this one in accessibility traversal.
A screen-reader must visit the content of the other node before the content
of this one.


Note: Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.


<br />


<br />


| Parameters ||
|---|---|
| `view` | `View`: The previous view. <br /> |


See also:


- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getTraversalAfter()`


### setTraversalAfter


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setTraversalAfter (View root,
int virtualDescendantId)
```


Sets the node after which this one is visited in accessibility traversal.
A screen-reader must visit the content of the other node before the content
of this one. If `virtualDescendantId` equals to `https://developer.android.com/reference/android/view/View#NO_ID`
the root is set as the predecessor.


A virtual descendant is an imaginary View that is reported as a part of the view
hierarchy for accessibility purposes. This enables custom views that draw complex
content to report them selves as a tree of virtual views, thus conveying their
logical structure.


Note: Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.


<br />


<br />


| Parameters ||
|---|---|
| `root` | `View`: The root of the virtual subtree. <br /> |
| `virtualDescendantId` | `int`: The id of the virtual descendant. <br /> |


### setTraversalBefore


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setTraversalBefore (View view)
```


Sets the view before whose node this one should be visited during traversal. A
screen-reader must visit the content of this node before the content of the one
it precedes.


Note: Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.


<br />


<br />


| Parameters ||
|---|---|
| `view` | `View`: The view providing the preceding node. <br /> |


See also:


- `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo#getTraversalBefore()`


### setTraversalBefore


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setTraversalBefore (View root,
int virtualDescendantId)
```


Sets the node before which this one is visited during traversal. A screen-reader
must visit the content of this node before the content of the one it precedes.
The successor is a virtual descendant of the given `root`. If
`virtualDescendantId` equals to `https://developer.android.com/reference/android/view/View#NO_ID` the root is set
as the successor.


A virtual descendant is an imaginary View that is reported as a part of the view
hierarchy for accessibility purposes. This enables custom views that draw complex
content to report them selves as a tree of virtual views, thus conveying their
logical structure.


Note: Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.


<br />


<br />


| Parameters ||
|---|---|
| `root` | `View`: The root of the virtual subtree. <br /> |
| `virtualDescendantId` | `int`: The id of the virtual descendant. <br /> |


### setUniqueId


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setUniqueId (String uniqueId)
```


Sets the unique id to act as a key to identify the node. If the node instance is replaced
after refreshing the layout, calling this API to assign the same unique id to the new
alike node can help accessibility service to identify it.

<br />


| Parameters ||
|---|---|
| `uniqueId` | `String`: The unique id that is associated with a visible node on the screen. This value may be `null`. <br /> |


### setViewIdResourceName


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setViewIdResourceName (String viewIdResName)
```


Sets the fully qualified resource name of the source view's id.


Note: Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.


<br />


<br />


| Parameters ||
|---|---|
| `viewIdResName` | `String`: The id resource name. <br /> |


### setVisibleToUser


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void setVisibleToUser (boolean visibleToUser)
```


Sets whether this node is visible to the user.


Note: Cannot be called from an
`https://developer.android.com/reference/android/accessibilityservice/AccessibilityService`.
This class is made immutable before being delivered to an AccessibilityService.


<br />


<br />


| Parameters ||
|---|---|
| `visibleToUser` | `boolean`: Whether the node is visible to the user. <br /> |


| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalStateException` | If called from an AccessibilityService. |


### toString


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public String toString ()
```


Returns a string representation of the object.

<br />


| Returns ||
|---|---|
| `https://developer.android.com/reference/java/lang/String` | a string representation of the object. <br /> |


### writeToParcel


Added in https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels


```
public void writeToParcel (Parcel parcel,
int flags)
```


Flatten this object in to a Parcel.


Note: After the instance is written to a parcel it
is recycled. You must not touch the object after calling this function.


<br />


<br />


| Parameters ||
|---|---|
| `parcel` | `Parcel`: The Parcel in which the object should be written. This value cannot be `null`. <br /> |
| `flags` | `int`: Additional flags about how the object should be written. May be 0 or `https://developer.android.com/reference/android/os/Parcelable#PARCELABLE_WRITE_RETURN_VALUE`. Value is either `0` or a combination of the following: - `https://developer.android.com/reference/android/os/Parcelable#PARCELABLE_WRITE_RETURN_VALUE` |


```` ``````` `


` ```` `


` ``