# Print output for @column tags ?> AccessibilityNodeInfo - Android SDK | Android Developers

Most visited

Recently visited

AccessibilityNodeInfo

public class AccessibilityNodeInfo
extends Object implements Parcelable

java.lang.Object
   ↳ android.view.accessibility.AccessibilityNodeInfo


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 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.

Please refer to 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 developer guide.

See also:

Summary

Nested classes

class AccessibilityNodeInfo.AccessibilityAction

A class defining an action that can be performed on an AccessibilityNodeInfo

class AccessibilityNodeInfo.CollectionInfo

Class with information if a node is a collection. 

class AccessibilityNodeInfo.CollectionItemInfo

Class with information if a node is a collection item. 

class AccessibilityNodeInfo.ExtraRenderingInfo

Class with information of a view useful to evaluate accessibility needs. 

class AccessibilityNodeInfo.RangeInfo

Class with information if a node is a range. 

class AccessibilityNodeInfo.TouchDelegateInfo

Class with information of touch delegated views and regions from TouchDelegate for the AccessibilityNodeInfo

Constants

int ACTION_ACCESSIBILITY_FOCUS

Action that gives accessibility focus to the node.

String ACTION_ARGUMENT_COLUMN_INT

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

String ACTION_ARGUMENT_EXTEND_SELECTION_BOOLEAN

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

String ACTION_ARGUMENT_HTML_ELEMENT_STRING

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

String ACTION_ARGUMENT_MOVEMENT_GRANULARITY_INT

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

String ACTION_ARGUMENT_MOVE_WINDOW_X

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

String ACTION_ARGUMENT_MOVE_WINDOW_Y

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

String ACTION_ARGUMENT_PRESS_AND_HOLD_DURATION_MILLIS_INT

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

String ACTION_ARGUMENT_PROGRESS_VALUE

Argument for specifying the progress value to set.

String ACTION_ARGUMENT_ROW_INT

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

String ACTION_ARGUMENT_SELECTION_END_INT

Argument for specifying the selection end.

String ACTION_ARGUMENT_SELECTION_START_INT

Argument for specifying the selection start.

String ACTION_ARGUMENT_SET_TEXT_CHARSEQUENCE

Argument for specifying the text content to set.

int ACTION_CLEAR_ACCESSIBILITY_FOCUS

Action that clears accessibility focus of the node.

int ACTION_CLEAR_FOCUS

Action that clears input focus of the node.

int ACTION_CLEAR_SELECTION

Action that deselects the node.

int ACTION_CLICK

Action that clicks on the node info.

int ACTION_COLLAPSE

Action to collapse an expandable node.

int ACTION_COPY

Action to copy the current selection to the clipboard.

int ACTION_CUT

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

int ACTION_DISMISS

Action to dismiss a dismissable node.

int ACTION_EXPAND

Action to expand an expandable node.

int ACTION_FOCUS

Action that gives input focus to the node.

int ACTION_LONG_CLICK

Action that long clicks on the node.

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.

int ACTION_NEXT_HTML_ELEMENT

Action to move to the next HTML element of a given type.

int ACTION_PASTE

Action to paste the current clipboard content.

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.

int ACTION_PREVIOUS_HTML_ELEMENT

Action to move to the previous HTML element of a given type.

int ACTION_SCROLL_BACKWARD

Action to scroll the node content backward.

int ACTION_SCROLL_FORWARD

Action to scroll the node content forward.

int ACTION_SELECT

Action that selects the node.

int ACTION_SET_SELECTION

Action to set the selection.

int ACTION_SET_TEXT

Action that sets the text of the node.

String EXTRA_DATA_RENDERING_INFO_KEY

Key used to request extra data for the rendering information.

String EXTRA_DATA_TEXT_CHARACTER_LOCATION_ARG_LENGTH

Integer argument specifying the end index of the requested text location data.

String EXTRA_DATA_TEXT_CHARACTER_LOCATION_ARG_START_INDEX

Integer argument specifying the start index of the requested text location data.

String EXTRA_DATA_TEXT_CHARACTER_LOCATION_KEY

Key used to request and locate extra data for text character location.

int FOCUS_ACCESSIBILITY

The accessibility focus.

int FOCUS_INPUT

The input focus.

int MOVEMENT_GRANULARITY_CHARACTER

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

int MOVEMENT_GRANULARITY_LINE

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

int MOVEMENT_GRANULARITY_PAGE

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

int MOVEMENT_GRANULARITY_PARAGRAPH

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

int MOVEMENT_GRANULARITY_WORD

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

Inherited constants

Fields

public static final Creator<AccessibilityNodeInfo> CREATOR

Public constructors

AccessibilityNodeInfo()

Creates a new AccessibilityNodeInfo.

AccessibilityNodeInfo(View source)

Creates a new AccessibilityNodeInfo with the given source.

AccessibilityNodeInfo(View root, int virtualDescendantId)

Creates a new AccessibilityNodeInfo with the given source.

AccessibilityNodeInfo(AccessibilityNodeInfo info)

Copy constructor.

Public methods

void addAction(int action)

This method is deprecated. This has been deprecated for addAction(android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction)

void addAction(AccessibilityNodeInfo.AccessibilityAction action)

Adds an action that can be performed on the node.

void addChild(View root, int virtualDescendantId)

Adds a virtual child which is a descendant of the given root.

void addChild(View child)

Adds a child.

boolean canOpenPopup()

Gets if this node opens a popup or a dialog.

int describeContents()

Describe the kinds of special objects contained in this Parcelable instance's marshaled representation.

boolean equals(Object object)

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

List<AccessibilityNodeInfo> findAccessibilityNodeInfosByText(String text)

Finds AccessibilityNodeInfos by text.

List<AccessibilityNodeInfo> findAccessibilityNodeInfosByViewId(String viewId)

Finds AccessibilityNodeInfos by the fully qualified view id's resource name where a fully qualified id is of the from "package:id/id_resource_name".

AccessibilityNodeInfo findFocus(int focus)

Find the view that has the specified focus type.

AccessibilityNodeInfo focusSearch(int direction)

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

List<AccessibilityNodeInfo.AccessibilityAction> getActionList()

Gets the actions that can be performed on the node.

int getActions()

This method is deprecated. Use getActionList().

List<String> getAvailableExtraData()

Get the extra data available for this node.

void getBoundsInParent(Rect outBounds)

This method is deprecated. Use getBoundsInScreen(android.graphics.Rect) instead.

void getBoundsInScreen(Rect outBounds)

Gets the node bounds in screen coordinates.

AccessibilityNodeInfo getChild(int index)

Get the child at given index.

int getChildCount()

Gets the number of children.

CharSequence getClassName()

Gets the class this node comes from.

AccessibilityNodeInfo.CollectionInfo getCollectionInfo()

Gets the collection info if the node is a collection.

AccessibilityNodeInfo.CollectionItemInfo getCollectionItemInfo()

Gets the collection item info if the node is a collection item.

CharSequence getContentDescription()

Gets the content description of this node.

int getDrawingOrder()

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

CharSequence getError()

Gets the error text of this node.

AccessibilityNodeInfo.ExtraRenderingInfo getExtraRenderingInfo()

Gets the ExtraRenderingInfo if the node is meant to be refreshed with extra data to examine rendering related accessibility issues.

Bundle getExtras()

Gets an optional bundle with extra data.

CharSequence getHintText()

Gets the hint text of this node.

int getInputType()

Gets the input type of the source as defined by InputType.

AccessibilityNodeInfo getLabelFor()

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

AccessibilityNodeInfo getLabeledBy()

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

int getLiveRegion()

Gets the node's live region mode.

int getMaxTextLength()

Returns the maximum text length for this node.

int getMovementGranularities()

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

CharSequence getPackageName()

Gets the package this node comes from.

CharSequence getPaneTitle()

Get the title of the pane represented by this node.

AccessibilityNodeInfo getParent()

Gets the parent.

AccessibilityNodeInfo.RangeInfo getRangeInfo()

Gets the range info if this node is a range.

CharSequence getStateDescription()

Get the state description of this node.

CharSequence getText()

Gets the text of this node.

int getTextSelectionEnd()

Gets the text selection end if text is selected.

int getTextSelectionStart()

Gets the text selection start or the cursor position.

CharSequence getTooltipText()

Gets the tooltip text of this node.

AccessibilityNodeInfo.TouchDelegateInfo getTouchDelegateInfo()

Get the TouchDelegateInfo for touch delegate behavior with the represented view.

AccessibilityNodeInfo getTraversalAfter()

Gets the node after which this one is visited in accessibility traversal.

AccessibilityNodeInfo getTraversalBefore()

Gets the node before which this one is visited during traversal.

String getViewIdResourceName()

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

AccessibilityWindowInfo getWindow()

Gets the window to which this node belongs.

int getWindowId()

Gets the id of the window from which the info comes from.

int hashCode()

Returns a hash code value for the object.

boolean isAccessibilityFocused()

Gets whether this node is accessibility focused.

boolean isCheckable()

Gets whether this node is checkable.

boolean isChecked()

Gets whether this node is checked.

boolean isClickable()

Gets whether this node is clickable.

boolean isContentInvalid()

Gets if the content of this node is invalid.

boolean isContextClickable()

Gets whether this node is context clickable.

boolean isDismissable()

Gets if the node can be dismissed.

boolean isEditable()

Gets if the node is editable.

boolean isEnabled()

Gets whether this node is enabled.

boolean isFocusable()

Gets whether this node is focusable.

boolean isFocused()

Gets whether this node is focused.

boolean isHeading()

Returns whether node represents a heading.

boolean isImportantForAccessibility()

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

boolean isLongClickable()

Gets whether this node is long clickable.

boolean isMultiLine()

Gets if the node is a multi line editable text.

boolean isPassword()

Gets whether this node is a password.

boolean isScreenReaderFocusable()

Returns whether the node is explicitly marked as a focusable unit by a screen reader.

boolean isScrollable()

Gets if the node is scrollable.

boolean isSelected()

Gets whether this node is selected.

boolean isShowingHintText()

Returns whether the node's text represents a hint for the user to enter text.

boolean isTextEntryKey()

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

boolean isVisibleToUser()

Gets whether this node is visible to the user.

static AccessibilityNodeInfo obtain(View root, int virtualDescendantId)

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

static AccessibilityNodeInfo obtain(AccessibilityNodeInfo info)

Returns a cached instance if such is available or a new one is create.

static AccessibilityNodeInfo obtain()

Returns a cached instance if such is available otherwise a new one.

static AccessibilityNodeInfo obtain(View source)

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

boolean performAction(int action, Bundle arguments)

Performs an action on the node.

boolean performAction(int action)

Performs an action on the node.

void recycle()

Return an instance back to be reused.

boolean refresh()

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

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.

boolean removeAction(AccessibilityNodeInfo.AccessibilityAction action)

Removes an action that can be performed on the node.

void removeAction(int action)

This method is deprecated. Use removeAction(android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction)

boolean removeChild(View root, int virtualDescendantId)

Removes a virtual child which is a descendant of the given root.

boolean removeChild(View child)

Removes a child.

void setAccessibilityFocused(boolean focused)

Sets whether this node is accessibility focused.

void setAvailableExtraData(List<String> extraDataKeys)

Set the extra data available for this node.

void setBoundsInParent(Rect bounds)

This method is deprecated. Accessibility services should not care about these bounds.

void setBoundsInScreen(Rect bounds)

Sets the node bounds in screen coordinates.

void setCanOpenPopup(boolean opensPopup)

Sets if this node opens a popup or a dialog.

void setCheckable(boolean checkable)

Sets whether this node is checkable.

void setChecked(boolean checked)

Sets whether this node is checked.

void setClassName(CharSequence className)

Sets the class this node comes from.

void setClickable(boolean clickable)

Sets whether this node is clickable.

void setCollectionInfo(AccessibilityNodeInfo.CollectionInfo collectionInfo)

Sets the collection info if the node is a collection.

void setCollectionItemInfo(AccessibilityNodeInfo.CollectionItemInfo collectionItemInfo)

Sets the collection item info if the node is a collection item.

void setContentDescription(CharSequence contentDescription)

Sets the content description of this node.

void setContentInvalid(boolean contentInvalid)

Sets if the content of this node is invalid.

void setContextClickable(boolean contextClickable)

Sets whether this node is context clickable.

void setDismissable(boolean dismissable)

Sets if the node can be dismissed.

void setDrawingOrder(int drawingOrderInParent)

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

void setEditable(boolean editable)

Sets whether this node is editable.

void setEnabled(boolean enabled)

Sets whether this node is enabled.

void setError(CharSequence error)

Sets the error text of this node.

void setFocusable(boolean focusable)

Sets whether this node is focusable.

void setFocused(boolean focused)

Sets whether this node is focused.

void setHeading(boolean isHeading)

Sets whether the node represents a heading.

void setHintText(CharSequence hintText)

Sets the hint text of this node.

void setImportantForAccessibility(boolean important)

Sets whether the node is considered important for accessibility.

void setInputType(int inputType)

Sets the input type of the source as defined by InputType.

void setLabelFor(View root, int virtualDescendantId)

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

void setLabelFor(View labeled)

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

void setLabeledBy(View label)

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

void setLabeledBy(View root, int virtualDescendantId)

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

void setLiveRegion(int mode)

Sets the node's live region mode.

void setLongClickable(boolean longClickable)

Sets whether this node is long clickable.

void setMaxTextLength(int max)

Sets the maximum text length, or -1 for no limit.

void setMovementGranularities(int granularities)

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

void setMultiLine(boolean multiLine)

Sets if the node is a multi line editable text.

void setPackageName(CharSequence packageName)

Sets the package this node comes from.

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.

void setParent(View root, int virtualDescendantId)

Sets the parent to be a virtual descendant of the given root.

void setParent(View parent)

Sets the parent.

void setPassword(boolean password)

Sets whether this node is a password.

void setRangeInfo(AccessibilityNodeInfo.RangeInfo rangeInfo)

Sets the range info if this node is a range.

void setScreenReaderFocusable(boolean screenReaderFocusable)

Sets whether the node should be considered a focusable unit by a screen reader.

void setScrollable(boolean scrollable)

Sets if the node is scrollable.

void setSelected(boolean selected)

Sets whether this node is selected.

void setShowingHintText(boolean showingHintText)

Sets whether the node's text represents a hint for the user to enter text.

void setSource(View source)

Sets the source.

void setSource(View root, int virtualDescendantId)

Sets the source to be a virtual descendant of the given root.

void setStateDescription(CharSequence stateDescription)

Sets the state description of this node.

void setText(CharSequence text)

Sets the text of this node.

void setTextEntryKey(boolean isTextEntryKey)

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

void setTextSelection(int start, int end)

Sets the text selection start and end.

void setTooltipText(CharSequence tooltipText)

Sets the tooltip text of this node.

void setTouchDelegateInfo(AccessibilityNodeInfo.TouchDelegateInfo delegatedInfo)

Set touch delegate info if the represented view has a TouchDelegate.

void setTraversalAfter(View view)

Sets the view whose node is visited after this one in accessibility traversal.

void setTraversalAfter(View root, int virtualDescendantId)

Sets the node after which this one is visited in accessibility traversal.

void setTraversalBefore(View view)

Sets the view before whose node this one should be visited during traversal.

void setTraversalBefore(View root, int virtualDescendantId)

Sets the node before which this one is visited during traversal.

void setViewIdResourceName(String viewIdResName)

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

void setVisibleToUser(boolean visibleToUser)

Sets whether this node is visible to the user.

String toString()

Returns a string representation of the object.

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.

Inherited methods

Constants

ACTION_ACCESSIBILITY_FOCUS

public static final int ACTION_ACCESSIBILITY_FOCUS

Action that gives accessibility focus to the node.

Constant Value: 64 (0x00000040)

ACTION_ARGUMENT_COLUMN_INT

public static final String ACTION_ARGUMENT_COLUMN_INT

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

Type: int
Actions:

See also:

Constant Value: "android.view.accessibility.action.ARGUMENT_COLUMN_INT"

ACTION_ARGUMENT_EXTEND_SELECTION_BOOLEAN

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:

See also:

Constant Value: "ACTION_ARGUMENT_EXTEND_SELECTION_BOOLEAN"

ACTION_ARGUMENT_HTML_ELEMENT_STRING

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:

See also:

Constant Value: "ACTION_ARGUMENT_HTML_ELEMENT_STRING"

ACTION_ARGUMENT_MOVEMENT_GRANULARITY_INT

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:

See also:

Constant Value: "ACTION_ARGUMENT_MOVEMENT_GRANULARITY_INT"

ACTION_ARGUMENT_MOVE_WINDOW_X

public static final String ACTION_ARGUMENT_MOVE_WINDOW_X

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

Type: int
Actions:

See also:

Constant Value: "ACTION_ARGUMENT_MOVE_WINDOW_X"

ACTION_ARGUMENT_MOVE_WINDOW_Y

public static final String ACTION_ARGUMENT_MOVE_WINDOW_Y

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

Type: int
Actions:

See also:

Constant Value: "ACTION_ARGUMENT_MOVE_WINDOW_Y"

ACTION_ARGUMENT_PRESS_AND_HOLD_DURATION_MILLIS_INT

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:

See also:

Constant Value: "android.view.accessibility.action.ARGUMENT_PRESS_AND_HOLD_DURATION_MILLIS_INT"

ACTION_ARGUMENT_PROGRESS_VALUE

public static final String ACTION_ARGUMENT_PROGRESS_VALUE

Argument for specifying the progress value to set.

Type: float
Actions:

See also:

Constant Value: "android.view.accessibility.action.ARGUMENT_PROGRESS_VALUE"

ACTION_ARGUMENT_ROW_INT

public static final String ACTION_ARGUMENT_ROW_INT

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

Type: int
Actions:

See also:

Constant Value: "android.view.accessibility.action.ARGUMENT_ROW_INT"

ACTION_ARGUMENT_SELECTION_END_INT

public static final String ACTION_ARGUMENT_SELECTION_END_INT

Argument for specifying the selection end.

Type: int
Actions:

See also:

Constant Value: "ACTION_ARGUMENT_SELECTION_END_INT"

ACTION_ARGUMENT_SELECTION_START_INT

public static final String ACTION_ARGUMENT_SELECTION_START_INT

Argument for specifying the selection start.

Type: int
Actions:

See also:

Constant Value: "ACTION_ARGUMENT_SELECTION_START_INT"

ACTION_ARGUMENT_SET_TEXT_CHARSEQUENCE

public static final String ACTION_ARGUMENT_SET_TEXT_CHARSEQUENCE

Argument for specifying the text content to set.

Type: CharSequence
Actions:

See also:

Constant Value: "ACTION_ARGUMENT_SET_TEXT_CHARSEQUENCE"

ACTION_CLEAR_ACCESSIBILITY_FOCUS

public static final int ACTION_CLEAR_ACCESSIBILITY_FOCUS

Action that clears accessibility focus of the node.

Constant Value: 128 (0x00000080)

ACTION_CLEAR_FOCUS

public static final int ACTION_CLEAR_FOCUS

Action that clears input focus of the node.

Constant Value: 2 (0x00000002)

ACTION_CLEAR_SELECTION

public static final int ACTION_CLEAR_SELECTION

Action that deselects the node.

Constant Value: 8 (0x00000008)

ACTION_CLICK

public static final int ACTION_CLICK

Action that clicks on the node info. See AccessibilityAction#ACTION_CLICK

Constant Value: 16 (0x00000010)

ACTION_COLLAPSE

public static final int ACTION_COLLAPSE

Action to collapse an expandable node.

Constant Value: 524288 (0x00080000)

ACTION_COPY

public static final int ACTION_COPY

Action to copy the current selection to the clipboard.

Constant Value: 16384 (0x00004000)

ACTION_CUT

public static final int ACTION_CUT

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

Constant Value: 65536 (0x00010000)

ACTION_DISMISS

public static final int ACTION_DISMISS

Action to dismiss a dismissable node.

Constant Value: 1048576 (0x00100000)

ACTION_EXPAND

public static final int ACTION_EXPAND

Action to expand an expandable node.

Constant Value: 262144 (0x00040000)

ACTION_FOCUS

public static final int ACTION_FOCUS

Action that gives input focus to the node.

Constant Value: 1 (0x00000001)

ACTION_LONG_CLICK

public static final int ACTION_LONG_CLICK

Action that long clicks on the node.

Constant Value: 32 (0x00000020)

ACTION_NEXT_AT_MOVEMENT_GRANULARITY

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: ACTION_ARGUMENT_MOVEMENT_GRANULARITY_INT<, 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);

See also:

Constant Value: 256 (0x00000100)

ACTION_NEXT_HTML_ELEMENT

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: 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);

Constant Value: 1024 (0x00000400)

ACTION_PASTE

public static final int ACTION_PASTE

Action to paste the current clipboard content.

Constant Value: 32768 (0x00008000)

ACTION_PREVIOUS_AT_MOVEMENT_GRANULARITY

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: ACTION_ARGUMENT_MOVEMENT_GRANULARITY_INT<, 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);

See also:

Constant Value: 512 (0x00000200)

ACTION_PREVIOUS_HTML_ELEMENT

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: 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);

Constant Value: 2048 (0x00000800)

ACTION_SCROLL_BACKWARD

public static final int ACTION_SCROLL_BACKWARD

Action to scroll the node content backward.

Constant Value: 8192 (0x00002000)

ACTION_SCROLL_FORWARD

public static final int ACTION_SCROLL_FORWARD

Action to scroll the node content forward.

Constant Value: 4096 (0x00001000)

ACTION_SELECT

public static final int ACTION_SELECT

Action that selects the node.

Constant Value: 4 (0x00000004)

ACTION_SET_SELECTION

public static final int ACTION_SET_SELECTION

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

Arguments: ACTION_ARGUMENT_SELECTION_START_INT, ACTION_ARGUMENT_SELECTION_END_INT
Example:

Bundle arguments = new Bundle(); arguments.putInt(AccessibilityNodeInfo.ACTION_ARGUMENT_SELECTION_START_INT, 1); arguments.putInt(AccessibilityNodeInfo.ACTION_ARGUMENT_SELECTION_END_INT, 2); info.performAction(AccessibilityNodeInfo.ACTION_SET_SELECTION, arguments);

See also:

Constant Value: 131072 (0x00020000)

ACTION_SET_TEXT

public static final int ACTION_SET_TEXT

Action that sets the text of the node. Performing the action without argument, using null or empty CharSequence will clear the text. This action will also put the cursor at the end of text.

Arguments: ACTION_ARGUMENT_SET_TEXT_CHARSEQUENCE
Example:

Bundle arguments = new Bundle(); arguments.putCharSequence(AccessibilityNodeInfo.ACTION_ARGUMENT_SET_TEXT_CHARSEQUENCE, "android"); info.performAction(AccessibilityNodeInfo.ACTION_SET_TEXT, arguments);

Constant Value: 2097152 (0x00200000)

EXTRA_DATA_RENDERING_INFO_KEY

public static final String EXTRA_DATA_RENDERING_INFO_KEY

Key used to request extra data for the rendering information. The key requests that a AccessibilityNodeInfo.ExtraRenderingInfo be added to this info. This request is made with refreshWithExtraData(java.lang.String, android.os.Bundle) without argument.

The data can be retrieved from the ExtraRenderingInfo returned by getExtraRenderingInfo() using ExtraRenderingInfo#getLayoutSize, ExtraRenderingInfo#getTextSizeInPx() and ExtraRenderingInfo#getTextSizeUnit(). For layout params, it is supported by both TextView and ViewGroup. For text size and unit, it is only supported by TextView.

See also:

Constant Value: "android.view.accessibility.extra.DATA_RENDERING_INFO_KEY"

EXTRA_DATA_TEXT_CHARACTER_LOCATION_ARG_LENGTH

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.

See also:

Constant Value: "android.view.accessibility.extra.DATA_TEXT_CHARACTER_LOCATION_ARG_LENGTH"

EXTRA_DATA_TEXT_CHARACTER_LOCATION_ARG_START_INDEX

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 getText().

See also:

Constant Value: "android.view.accessibility.extra.DATA_TEXT_CHARACTER_LOCATION_ARG_START_INDEX"

EXTRA_DATA_TEXT_CHARACTER_LOCATION_KEY

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 RectFs be added to the extras. This request is made with refreshWithExtraData(java.lang.String, android.os.Bundle). The arguments taken by this request are two integers: EXTRA_DATA_TEXT_CHARACTER_LOCATION_ARG_START_INDEX and EXTRA_DATA_TEXT_CHARACTER_LOCATION_ARG_LENGTH. The starting index must be valid inside the CharSequence returned by getText(), and the length must be positive.

The data can be retrieved from the Bundle returned by getExtras() using this string as a key for Bundle#getParcelableArray(String). The RectF will be null for characters that either do not exist or are off the screen.

See also:

Constant Value: "android.view.accessibility.extra.DATA_TEXT_CHARACTER_LOCATION_KEY"

FOCUS_ACCESSIBILITY

public static final int FOCUS_ACCESSIBILITY

The accessibility focus.

Constant Value: 2 (0x00000002)

FOCUS_INPUT

public static final int FOCUS_INPUT

The input focus.

Constant Value: 1 (0x00000001)

MOVEMENT_GRANULARITY_CHARACTER

public static final int MOVEMENT_GRANULARITY_CHARACTER

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

Constant Value: 1 (0x00000001)

MOVEMENT_GRANULARITY_LINE

public static final int MOVEMENT_GRANULARITY_LINE

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

Constant Value: 4 (0x00000004)

MOVEMENT_GRANULARITY_PAGE

public static final int MOVEMENT_GRANULARITY_PAGE

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

Constant Value: 16 (0x00000010)

MOVEMENT_GRANULARITY_PARAGRAPH

public static final int MOVEMENT_GRANULARITY_PARAGRAPH

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

Constant Value: 8 (0x00000008)

MOVEMENT_GRANULARITY_WORD

public static final int MOVEMENT_GRANULARITY_WORD

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

Constant Value: 2 (0x00000002)

Fields

CREATOR

public static final Creator<AccessibilityNodeInfo> CREATOR

See also:

Public constructors

AccessibilityNodeInfo

public AccessibilityNodeInfo ()

Creates a new AccessibilityNodeInfo.

AccessibilityNodeInfo

public AccessibilityNodeInfo (View source)

Creates a new AccessibilityNodeInfo with the given source.

Parameters
source View: The source view. This value cannot be null.

AccessibilityNodeInfo

public AccessibilityNodeInfo (View root, 
                int virtualDescendantId)

Creates a new AccessibilityNodeInfo with the given source.

Parameters
root View: The root of the virtual subtree. This value cannot be null.

virtualDescendantId int: The id of the virtual descendant.

AccessibilityNodeInfo

public AccessibilityNodeInfo (AccessibilityNodeInfo info)

Copy constructor. Creates a new AccessibilityNodeInfo, and this new instance is initialized from the given info.

Parameters
info AccessibilityNodeInfo: The other info. This value cannot be null.

Public methods

addAction

public void addAction (int action)

This method is deprecated.
This has been deprecated for addAction(android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction)

Adds an action that can be performed on the node.

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

Parameters
action int: The action.

Throws
IllegalStateException If called from an AccessibilityService.
IllegalArgumentException If the argument is not one of the standard actions.

addAction

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 AccessibilityAction. To add a custom action create a new 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 ACTION_CLICK and an optional label that describes the action.

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

Parameters
action AccessibilityNodeInfo.AccessibilityAction: The action.

Throws
IllegalStateException If called from an AccessibilityService.

addChild

public void addChild (View root, 
                int virtualDescendantId)

Adds a virtual child which is a descendant of the given root. If virtualDescendantId is 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.

Parameters
root View: The root of the virtual subtree.

virtualDescendantId int: The id of the virtual child.

addChild

public void addChild (View child)

Adds a child.

Note: Cannot be called from an AccessibilityService. This class is made immutable before being delivered to an AccessibilityService. Note that a view cannot be made its own child.

Parameters
child View: The child.

Throws
IllegalStateException If called from an AccessibilityService.

canOpenPopup

public boolean canOpenPopup ()

Gets if this node opens a popup or a dialog.

Returns
boolean If the the node opens a popup.

describeContents

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 writeToParcel(android.os.Parcel, int), the return value of this method must include the CONTENTS_FILE_DESCRIPTOR bit.

Returns
int a bitmask indicating the set of special object types marshaled by this Parcelable object instance. Value is either 0 or CONTENTS_FILE_DESCRIPTOR

equals

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.

The equals method for class Object implements the most discriminating possible equivalence relation on objects; that is, for any non-null reference values x and y, this method returns true if and only if x and y refer to the same object (x == y has the value true).

Note that it is generally necessary to override the hashCode method whenever this method is overridden, so as to maintain the general contract for the hashCode method, which states that equal objects must have equal hash codes.

Parameters
object Object: the reference object with which to compare.

Returns
boolean true if this object is the same as the obj argument; false otherwise.

findAccessibilityNodeInfosByText

public List<AccessibilityNodeInfo> findAccessibilityNodeInfosByText (String text)

Finds AccessibilityNodeInfos 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: It is a client responsibility to recycle the received info by calling AccessibilityNodeInfo#recycle() to avoid creating of multiple instances.

Note: If this view hierarchy has a SurfaceView embedding another view hierarchy via SurfaceView#setChildSurfacePackage, 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.

Parameters
text String: The searched text.

Returns
List<AccessibilityNodeInfo> A list of node info.

findAccessibilityNodeInfosByViewId

public List<AccessibilityNodeInfo> findAccessibilityNodeInfosByViewId (String viewId)

Finds AccessibilityNodeInfos 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: It is a client responsibility to recycle the received info by calling AccessibilityNodeInfo#recycle() to avoid creating of multiple instances.

Note: The primary usage of this API is for UI test automation and in order to report the fully qualified view id if an AccessibilityNodeInfo the client has to set the AccessibilityServiceInfo#FLAG_REPORT_VIEW_IDS flag when configuring the AccessibilityService.

Note: If this view hierarchy has a SurfaceView embedding another view hierarchy via SurfaceView#setChildSurfacePackage, 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.

Parameters
viewId String: The fully qualified resource name of the view id to find.

Returns
List<AccessibilityNodeInfo> A list of node info.

findFocus

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 SurfaceView embedding another view hierarchy via SurfaceView#setChildSurfacePackage, 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 AccessibilityService#findFocus(int) for FOCUS_ACCESSIBILITY only since it has no such limitation.

Parameters
focus int: The focus to find. One of FOCUS_INPUT or FOCUS_ACCESSIBILITY.

Returns
AccessibilityNodeInfo The node info of the focused view or null.

See also:

focusSearch

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 SurfaceView embedding another view hierarchy via SurfaceView#setChildSurfacePackage, 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.

Parameters
direction int: The direction. Can be one of: View#FOCUS_DOWN, View#FOCUS_UP, View#FOCUS_LEFT, View#FOCUS_RIGHT, View#FOCUS_FORWARD, View#FOCUS_BACKWARD.

Returns
AccessibilityNodeInfo The node info for the view that can take accessibility focus.

getActionList

public List<AccessibilityNodeInfo.AccessibilityAction> getActionList ()

Gets the actions that can be performed on the node.

Returns
List<AccessibilityNodeInfo.AccessibilityAction>

getActions

public int getActions ()

This method is deprecated.
Use getActionList().

Gets the actions that can be performed on the node.

Returns
int The bit mask of with actions.

See also:

getAvailableExtraData

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 refreshWithExtraData(java.lang.String, android.os.Bundle).

Returns
List<String> An unmodifiable list of keys corresponding to extra data that can be requested.

See also:

getBoundsInParent

public void getBoundsInParent (Rect outBounds)

This method is deprecated.
Use getBoundsInScreen(android.graphics.Rect) instead.

Gets the node bounds in the viewParent's coordinates. getParent() does not represent the source's viewParent. Instead it represents the result of View#getParentForAccessibility(), which returns the closest ancestor where 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.

Parameters
outBounds Rect: The output node bounds.

getBoundsInScreen

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.

Parameters
outBounds Rect: The output node bounds.

getChild

public AccessibilityNodeInfo getChild (int index)

Get the child at given index.

Note: It is a client responsibility to recycle the received info by calling AccessibilityNodeInfo#recycle() to avoid creating of multiple instances.

Parameters
index int: The child index.

Returns
AccessibilityNodeInfo The child node.

Throws
IllegalStateException If called outside of an AccessibilityService.

getChildCount

public int getChildCount ()

Gets the number of children.

Returns
int The child count.

getClassName

public CharSequence getClassName ()

Gets the class this node comes from.

Returns
CharSequence The class name.

getCollectionInfo

public AccessibilityNodeInfo.CollectionInfo getCollectionInfo ()

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

Returns
AccessibilityNodeInfo.CollectionInfo The collection info.

getCollectionItemInfo

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.

Returns
AccessibilityNodeInfo.CollectionItemInfo The collection item info.

getContentDescription

public CharSequence getContentDescription ()

Gets the content description of this node.

Returns
CharSequence The content description.

getDrawingOrder

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.

Returns
int The drawing position of the view corresponding to this node relative to its siblings.

getError

public CharSequence getError ()

Gets the error text of this node.

Returns
CharSequence The error text.

getExtraRenderingInfo

public AccessibilityNodeInfo.ExtraRenderingInfo getExtraRenderingInfo ()

Gets the ExtraRenderingInfo if the node is meant to be refreshed with extra data to examine rendering related accessibility issues.

Returns
AccessibilityNodeInfo.ExtraRenderingInfo The ExtraRenderingInfo. This value may be null.

See also:

getExtras

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.

Returns
Bundle The bundle.

getHintText

public CharSequence getHintText ()

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

Returns
CharSequence The hint text.

getInputType

public int getInputType ()

Gets the input type of the source as defined by InputType.

Returns
int The input type.

getLabelFor

public AccessibilityNodeInfo getLabelFor ()

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

Note: It is a client responsibility to recycle the received info by calling AccessibilityNodeInfo#recycle() to avoid creating of multiple instances.

Returns
AccessibilityNodeInfo The labeled info.

getLabeledBy

public AccessibilityNodeInfo getLabeledBy ()

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

Note: It is a client responsibility to recycle the received info by calling AccessibilityNodeInfo#recycle() to avoid creating of multiple instances.

Returns
AccessibilityNodeInfo The label.

getLiveRegion

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, in a login screen with a TextView that displays an "incorrect password" notification, that view should be marked as a live region with mode View#ACCESSIBILITY_LIVE_REGION_POLITE.

It is the responsibility of the accessibility service to monitor AccessibilityEvent#TYPE_WINDOW_CONTENT_CHANGED events indicating changes to live region nodes and their children.

Returns
int The live region mode, or View#ACCESSIBILITY_LIVE_REGION_NONE if the view is not a live region.

See also:

getMaxTextLength

public int getMaxTextLength ()

Returns the maximum text length for this node.

Returns
int The maximum text length, or -1 for no limit.

See also:

getMovementGranularities

public int getMovementGranularities ()

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

Returns
int The bit mask with granularities.

getPackageName

public CharSequence getPackageName ()

Gets the package this node comes from.

Returns
CharSequence The package name.

getPaneTitle

public CharSequence getPaneTitle ()

Get the title of the pane represented by this node.

Returns
CharSequence The title of the pane represented by this node, or null if this node does not represent a pane.

getParent

public AccessibilityNodeInfo getParent ()

Gets the parent.

Note: It is a client responsibility to recycle the received info by calling AccessibilityNodeInfo#recycle() to avoid creating of multiple instances.

Returns
AccessibilityNodeInfo The parent.

getRangeInfo

public AccessibilityNodeInfo.RangeInfo getRangeInfo ()

Gets the range info if this node is a range.

Returns
AccessibilityNodeInfo.RangeInfo The range.

getStateDescription

public CharSequence getStateDescription ()

Get the state description of this node.

Returns
CharSequence the state description This value may be null.

getText

public CharSequence getText ()

Gets the text of this node.

Note: If the text contains ClickableSpans or URLSpans, these spans will have been replaced with ones whose ClickableSpan#onClick(View) can be called from an AccessibilityService. When called from a service, the 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 ClickableSpans means that the text returned from this method may different slightly one passed to setText(java.lang.CharSequence), although they will be equivalent according to TextUtils#equals(CharSequence, CharSequence). The ClickableSpan#onClick(View) of any spans, however, will generally not work outside of an accessibility service.

Returns
CharSequence The text.

getTextSelectionEnd

public int getTextSelectionEnd ()

Gets the text selection end if text is selected.

If no text is selected, both this method and AccessibilityNodeInfo#getTextSelectionStart() return the same value: the current location of the cursor.

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.

getTextSelectionStart

public int getTextSelectionStart ()

Gets the text selection start or the cursor position.

If no text is selected, both this method and AccessibilityNodeInfo#getTextSelectionEnd() return the same value: the current location of the cursor.

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.

getTooltipText

public CharSequence getTooltipText ()

Gets the tooltip text of this node.

Returns
CharSequence The tooltip text. This value may be null.

getTouchDelegateInfo

public AccessibilityNodeInfo.TouchDelegateInfo getTouchDelegateInfo ()

Get the TouchDelegateInfo for touch delegate behavior with the represented view. It is possible for the same node to be pointed to by several regions. Use TouchDelegateInfo#getRegionAt(int) to get touch delegate target Region, and TouchDelegateInfo#getTargetForRegion(Region) for AccessibilityNodeInfo from the given region.

Returns
AccessibilityNodeInfo.TouchDelegateInfo TouchDelegateInfo or null if there are no touch delegates.

getTraversalAfter

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.

Returns
AccessibilityNodeInfo The succeeding node if such or null.

See also:

getTraversalBefore

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.

Returns
AccessibilityNodeInfo The succeeding node if such or null.

See also:

getViewIdResourceName

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 AccessibilityNodeInfo the client has to set the AccessibilityServiceInfo#FLAG_REPORT_VIEW_IDS flag when configuring the AccessibilityService.

Returns
String The id resource name.

getWindow

public AccessibilityWindowInfo getWindow ()

Gets the window to which this node belongs.

Returns
AccessibilityWindowInfo The window.

See also:

getWindowId

public int getWindowId ()

Gets the id of the window from which the info comes from.

Returns
int The window id.

hashCode

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 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 equals(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 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.

As much as is reasonably practical, the hashCode method defined by class Object does return distinct integers for distinct objects. (This is typically implemented by converting the internal address of the object into an integer, but this implementation technique is not required by the Java™ programming language.)

Returns
int a hash code value for this object.

isAccessibilityFocused

public boolean isAccessibilityFocused ()

Gets whether this node is accessibility focused.

Returns
boolean True if the node is accessibility focused.

isCheckable

public boolean isCheckable ()

Gets whether this node is checkable.

Returns
boolean True if the node is checkable.

isChecked

public boolean isChecked ()

Gets whether this node is checked.

Returns
boolean True if the node is checked.

isClickable

public boolean isClickable ()

Gets whether this node is clickable.

Returns
boolean True if the node is clickable.

isContentInvalid

public boolean isContentInvalid ()

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

Returns
boolean If the node content is invalid.

isContextClickable

public boolean isContextClickable ()

Gets whether this node is context clickable.

Returns
boolean True if the node is context clickable.

isDismissable

public boolean isDismissable ()

Gets if the node can be dismissed.

Returns
boolean If the node can be dismissed.

isEditable

public boolean isEditable ()

Gets if the node is editable.

Returns
boolean True if the node is editable, false otherwise.

isEnabled

public boolean isEnabled ()

Gets whether this node is enabled.

Returns
boolean True if the node is enabled.

isFocusable

public boolean isFocusable ()

Gets whether this node is focusable.

Returns
boolean True if the node is focusable.

isFocused

public boolean isFocused ()

Gets whether this node is focused.

Returns
boolean True if the node is focused.

isHeading

public boolean isHeading ()

Returns whether node represents a heading.

Note: Returns true if either setHeading(boolean) marks this node as a heading or if the node has a CollectionItemInfo that marks it as such, to accomodate apps that use the now-deprecated API.

Returns
boolean true if the node is a heading, false otherwise.

isImportantForAccessibility

public boolean isImportantForAccessibility ()

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

Returns
boolean true if the node originates from a view considered important for accessibility, false otherwise

See also:

isLongClickable

public boolean isLongClickable ()

Gets whether this node is long clickable.

Returns
boolean True if the node is long clickable.

isMultiLine

public boolean isMultiLine ()

Gets if the node is a multi line editable text.

Returns
boolean True if the node is multi line.

isPassword

public boolean isPassword ()

Gets whether this node is a password.

Returns
boolean True if the node is a password.

isScreenReaderFocusable

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 isFocusable(), or the presence of text in a node, to determine what should receive focus.

Returns
boolean true if the node is specifically marked as a focusable unit for screen readers, false otherwise.

See also:

isScrollable

public boolean isScrollable ()

Gets if the node is scrollable.

Returns
boolean True if the node is scrollable, false otherwise.

isSelected

public boolean isSelected ()

Gets whether this node is selected.

Returns
boolean True if the node is selected.

isShowingHintText

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.

Returns
boolean true if the text in the node represents a hint to the user, false otherwise.

isTextEntryKey

public boolean isTextEntryKey ()

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

Returns
boolean true if the node is a text entry key., false otherwise.

isVisibleToUser

public boolean isVisibleToUser ()

Gets whether this node is visible to the user.

Between Build.VERSION_CODES#JELLY_BEAN and 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.

Returns
boolean Whether the node is visible to the user.

obtain

public static AccessibilityNodeInfo obtain (View root, 
                int virtualDescendantId)

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

In most situations object pooling is not beneficial. Create a new instance using the constructor AccessibilityNodeInfo(android.view.View, int) instead.

Parameters
root View: The root of the virtual subtree.

virtualDescendantId int: The id of the virtual descendant.

Returns
AccessibilityNodeInfo An instance.

See also:

obtain

public static AccessibilityNodeInfo obtain (AccessibilityNodeInfo info)

Returns a cached instance if such is available or a new one is create. The returned instance is initialized from the given info.

In most situations object pooling is not beneficial. Create a new instance using the constructor AccessibilityNodeInfo(android.view.accessibility.AccessibilityNodeInfo) instead.

Parameters
info AccessibilityNodeInfo: The other info.

Returns
AccessibilityNodeInfo An instance.

obtain

public static AccessibilityNodeInfo obtain ()

Returns a cached instance if such is available otherwise a new one.

In most situations object pooling is not beneficial. Create a new instance using the constructor AccessibilityNodeInfo() instead.

Returns
AccessibilityNodeInfo An instance.

obtain

public static AccessibilityNodeInfo obtain (View source)

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

In most situations object pooling is not beneficial. Create a new instance using the constructor AccessibilityNodeInfo(android.view.View) instead.

Parameters
source View: The source view.

Returns
AccessibilityNodeInfo An instance.

See also:

performAction

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 AccessibilityService.

Parameters
action int: The action to perform.

arguments Bundle: A bundle with additional arguments.

Returns
boolean True if the action was performed.

Throws
IllegalStateException If called outside of an AccessibilityService.

performAction

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 AccessibilityService.

Parameters
action int: The action to perform.

Returns
boolean True if the action was performed.

Throws
IllegalStateException If called outside of an AccessibilityService.

recycle

public void recycle ()

Return an instance back to be reused.

Note: You must not touch the object after calling this function.

In most situations object pooling is not beneficial, and recycling is not necessary.

Throws
IllegalStateException If the info is already recycled.

refresh

public boolean refresh ()

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

Returns
boolean true if the refresh succeeded. false if the View represented by this node is no longer in the view tree (and thus this node is obsolete and should be recycled).

refreshWithExtraData

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.

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 EXTRA_DATA_RENDERING_INFO_KEY, EXTRA_DATA_TEXT_CHARACTER_LOCATION_KEY, getAvailableExtraData() and getExtraRenderingInfo().

args Bundle: A bundle of arguments for the request. These depend on the particular request.

Returns
boolean true if the refresh succeeded. false if the View represented by this node is no longer in the view tree (and thus this node is obsolete and should be recycled).

removeAction

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 AccessibilityService. This class is made immutable before being delivered to an AccessibilityService.

Parameters
action AccessibilityNodeInfo.AccessibilityAction: The action to be removed.

Returns
boolean The action removed from the list of actions.

Throws
IllegalStateException If called from an AccessibilityService.

removeAction

public void removeAction (int action)

This method is deprecated.
Use 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 AccessibilityService. This class is made immutable before being delivered to an AccessibilityService.

Parameters
action int: The action to be removed.

Throws
IllegalStateException If called from an AccessibilityService.

removeChild

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.

Parameters
root View: The root of the virtual subtree.

virtualDescendantId int: The id of the virtual child.

Returns
boolean true if the child was present

See also:

removeChild

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 AccessibilityService. This class is made immutable before being delivered to an AccessibilityService.

Parameters
child View: The child.

Returns
boolean true if the child was present

Throws
IllegalStateException If called from an AccessibilityService.

setAccessibilityFocused

public void setAccessibilityFocused (boolean focused)

Sets whether this node is accessibility focused.

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

Parameters
focused boolean: True if the node is accessibility focused.

Throws
IllegalStateException If called from an AccessibilityService.

setAvailableExtraData

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 View#addExtraDataToAccessibilityNodeInfo(AccessibilityNodeInfo, String, Bundle).

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

Parameters
extraDataKeys List: A list of types of extra data that are available.

Throws
IllegalStateException If called from an AccessibilityService.

See also:

setBoundsInParent

public void setBoundsInParent (Rect bounds)

This method is deprecated.
Accessibility services should not care about these bounds.

Sets the node bounds in the viewParent's coordinates. getParent() does not represent the source's viewParent. Instead it represents the result of View#getParentForAccessibility(), which returns the closest ancestor where View#isImportantForAccessibility() is true. So this method is not reliable.

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

Parameters
bounds Rect: The node bounds.

Throws
IllegalStateException If called from an AccessibilityService.

setBoundsInScreen

public void setBoundsInScreen (Rect bounds)

Sets the node bounds in screen coordinates.

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

Parameters
bounds Rect: The node bounds.

Throws
IllegalStateException If called from an AccessibilityService.

setCanOpenPopup

public void setCanOpenPopup (boolean opensPopup)

Sets if this node opens a popup or a dialog.

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

Parameters
opensPopup boolean: If the the node opens a popup.

setCheckable

public void setCheckable (boolean checkable)

Sets whether this node is checkable.

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

Parameters
checkable boolean: True if the node is checkable.

Throws
IllegalStateException If called from an AccessibilityService.

setChecked

public void setChecked (boolean checked)

Sets whether this node is checked.

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

Parameters
checked boolean: True if the node is checked.

Throws
IllegalStateException If called from an AccessibilityService.

setClassName

public void setClassName (CharSequence className)

Sets the class this node comes from.

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

Parameters
className CharSequence: The class name.

Throws
IllegalStateException If called from an AccessibilityService.

setClickable

public void setClickable (boolean clickable)

Sets whether this node is clickable.

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

Parameters
clickable boolean: True if the node is clickable.

Throws
IllegalStateException If called from an AccessibilityService.

setCollectionInfo

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 AccessibilityService. This class is made immutable before being delivered to an AccessibilityService.

Parameters
collectionInfo AccessibilityNodeInfo.CollectionInfo: The collection info.

setCollectionItemInfo

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 AccessibilityService. This class is made immutable before being delivered to an AccessibilityService.

Parameters
collectionItemInfo AccessibilityNodeInfo.CollectionItemInfo

setContentDescription

public void setContentDescription (CharSequence contentDescription)

Sets the content description of this node.

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

Parameters
contentDescription CharSequence: The content description.

Throws
IllegalStateException If called from an AccessibilityService.

setContentInvalid

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 AccessibilityService. This class is made immutable before being delivered to an AccessibilityService.

Parameters
contentInvalid boolean: If the node content is invalid.

setContextClickable

public void setContextClickable (boolean contextClickable)

Sets whether this node is context clickable.

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

Parameters
contextClickable boolean: True if the node is context clickable.

Throws
IllegalStateException If called from an AccessibilityService.

setDismissable

public void setDismissable (boolean dismissable)

Sets if the node can be dismissed.

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

Parameters
dismissable boolean: If the node can be dismissed.

setDrawingOrder

public void setDrawingOrder (int drawingOrderInParent)

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

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

Throws
IllegalStateException If called from an AccessibilityService.

setEditable

public void setEditable (boolean editable)

Sets whether this node is editable.

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

Parameters
editable boolean: True if the node is editable.

Throws
IllegalStateException If called from an AccessibilityService.

setEnabled

public void setEnabled (boolean enabled)

Sets whether this node is enabled.

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

Parameters
enabled boolean: True if the node is enabled.

Throws
IllegalStateException If called from an AccessibilityService.

setError

public void setError (CharSequence error)

Sets the error text of this node.

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

Parameters
error CharSequence: The error text.

Throws
IllegalStateException If called from an AccessibilityService.

setFocusable

public void setFocusable (boolean focusable)

Sets whether this node is focusable.

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

Parameters
focusable boolean: True if the node is focusable.

Throws
IllegalStateException If called from an AccessibilityService.

setFocused

public void setFocused (boolean focused)

Sets whether this node is focused.

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

Parameters
focused boolean: True if the node is focused.

Throws
IllegalStateException If called from an AccessibilityService.

setHeading

public void setHeading (boolean isHeading)

Sets whether the node represents a heading.

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

Parameters
isHeading boolean: true if the node is a heading, false otherwise.

setHintText

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 AccessibilityService. This class is made immutable before being delivered to an AccessibilityService.

Parameters
hintText CharSequence: The hint text for this mode.

Throws
IllegalStateException If called from an AccessibilityService.

setImportantForAccessibility

public void setImportantForAccessibility (boolean important)

Sets whether the node is considered important for accessibility.

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

Parameters
important boolean: true if the node is considered important for accessibility, false otherwise

setInputType

public void setInputType (int inputType)

Sets the input type of the source as defined by InputType.

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

Parameters
inputType int: The input type.

Throws
IllegalStateException If called from an AccessibilityService.

setLabelFor

public void setLabelFor (View root, 
                int virtualDescendantId)

Sets the view for which the view represented by this info serves as a label for accessibility purposes. If virtualDescendantId is 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 AccessibilityService. This class is made immutable before being delivered to an AccessibilityService.

Parameters
root View: The root whose virtual descendant serves as a label.

virtualDescendantId int: The id of the virtual descendant.

setLabelFor

public void setLabelFor (View labeled)

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

Parameters
labeled View: The view for which this info serves as a label.

setLabeledBy

public void setLabeledBy (View label)

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

Parameters
label View: The view that labels this node's source.

setLabeledBy

public void setLabeledBy (View root, 
                int virtualDescendantId)

Sets the view which serves as the label of the view represented by this info for accessibility purposes. If virtualDescendantId is 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 AccessibilityService. This class is made immutable before being delivered to an AccessibilityService.

Parameters
root View: The root whose virtual descendant labels this node's source.

virtualDescendantId int: The id of the virtual descendant.

setLiveRegion

public void setLiveRegion (int mode)

Sets the node's live region mode.

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

Parameters
mode int: The live region mode, or View#ACCESSIBILITY_LIVE_REGION_NONE if the view is not a live region.

See also:

setLongClickable

public void setLongClickable (boolean longClickable)

Sets whether this node is long clickable.

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

Parameters
longClickable boolean: True if the node is long clickable.

Throws
IllegalStateException If called from an AccessibilityService.

setMaxTextLength

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 AccessibilityService. This class is made immutable before being delivered to an AccessibilityService.

Parameters
max int: The maximum text length.

Throws
IllegalStateException If called from an AccessibilityService.

See also:

setMovementGranularities

public void setMovementGranularities (int granularities)

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

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

Parameters
granularities int: The bit mask with granularities.

Throws
IllegalStateException If called from an AccessibilityService.

setMultiLine

public void setMultiLine (boolean multiLine)

Sets if the node is a multi line editable text.

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

Parameters
multiLine boolean: True if the node is multi line.

setPackageName

public void setPackageName (CharSequence packageName)

Sets the package this node comes from.

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

Parameters
packageName CharSequence: The package name.

Throws
IllegalStateException If called from an AccessibilityService.

setPaneTitle

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 AccessibilityService. This class is made immutable before being delivered to an AccessibilityService.

Parameters
paneTitle CharSequence: The title of the pane represented by this node. This value may be null.

setParent

public void setParent (View root, 
                int virtualDescendantId)

Sets the parent to be a virtual descendant of the given root. If virtualDescendantId equals to 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 AccessibilityService. This class is made immutable before being delivered to an AccessibilityService.

Parameters
root View: The root of the virtual subtree.

virtualDescendantId int: The id of the virtual descendant.

setParent

public void setParent (View parent)

Sets the parent.

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

Parameters
parent View: The parent.

Throws
IllegalStateException If called from an AccessibilityService.

setPassword

public void setPassword (boolean password)

Sets whether this node is a password.

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

Parameters
password boolean: True if the node is a password.

Throws
IllegalStateException If called from an AccessibilityService.

setRangeInfo

public void setRangeInfo (AccessibilityNodeInfo.RangeInfo rangeInfo)

Sets the range info if this node is a range.

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

Parameters
rangeInfo AccessibilityNodeInfo.RangeInfo: The range info.

setScreenReaderFocusable

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 AccessibilityService. This class is made immutable before being delivered to an AccessibilityService.

Parameters
screenReaderFocusable boolean: true if the node is a focusable unit for screen readers, false otherwise.

setScrollable

public void setScrollable (boolean scrollable)

Sets if the node is scrollable.

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

Parameters
scrollable boolean: True if the node is scrollable, false otherwise.

Throws
IllegalStateException If called from an AccessibilityService.

setSelected

public void setSelected (boolean selected)

Sets whether this node is selected.

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

Parameters
selected boolean: True if the node is selected.

Throws
IllegalStateException If called from an AccessibilityService.

setShowingHintText

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 AccessibilityService. This class is made immutable before being delivered to an AccessibilityService.

Parameters
showingHintText boolean: true if the text in the node represents a hint to the user, false otherwise.

setSource

public void setSource (View source)

Sets the source.

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

Parameters
source View: The info source.

setSource

public void setSource (View root, 
                int virtualDescendantId)

Sets the source to be a virtual descendant of the given root. If virtualDescendantId is 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 AccessibilityService. This class is made immutable before being delivered to an AccessibilityService.

Parameters
root View: The root of the virtual subtree.

virtualDescendantId int: The id of the virtual descendant.

setStateDescription

public void setStateDescription (CharSequence stateDescription)

Sets the state description of this node.

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

Parameters
stateDescription CharSequence: the state description of this node. This value may be null.

Throws
IllegalStateException If called from an AccessibilityService.

setText

public void setText (CharSequence text)

Sets the text of this node.

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

Parameters
text CharSequence: The text.

Throws
IllegalStateException If called from an AccessibilityService.

setTextEntryKey

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 AccessibilityService. This class is made immutable before being delivered to an AccessibilityService.

Parameters
isTextEntryKey boolean: true if the node is a text entry key, false otherwise.

setTextSelection

public void setTextSelection (int start, 
                int end)

Sets the text selection start and end.

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

Parameters
start int: The text selection start.

end int: The text selection end.

Throws
IllegalStateException If called from an AccessibilityService.

setTooltipText

public void setTooltipText (CharSequence tooltipText)

Sets the tooltip text of this node.

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

Parameters
tooltipText CharSequence: The tooltip text. This value may be null.

Throws
IllegalStateException If called from an AccessibilityService.

setTouchDelegateInfo

public void setTouchDelegateInfo (AccessibilityNodeInfo.TouchDelegateInfo delegatedInfo)

Set touch delegate info if the represented view has a TouchDelegate.

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

Parameters
delegatedInfo AccessibilityNodeInfo.TouchDelegateInfo: TouchDelegateInfo returned from TouchDelegate#getTouchDelegateInfo(). This value cannot be null.

Throws
IllegalStateException If called from an AccessibilityService.

setTraversalAfter

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 AccessibilityService. This class is made immutable before being delivered to an AccessibilityService.

Parameters
view View: The previous view.

See also:

setTraversalAfter

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 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 AccessibilityService. This class is made immutable before being delivered to an AccessibilityService.

Parameters
root View: The root of the virtual subtree.

virtualDescendantId int: The id of the virtual descendant.

setTraversalBefore

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 AccessibilityService. This class is made immutable before being delivered to an AccessibilityService.

Parameters
view View: The view providing the preceding node.

See also:

setTraversalBefore

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 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 AccessibilityService. This class is made immutable before being delivered to an AccessibilityService.

Parameters
root View: The root of the virtual subtree.

virtualDescendantId int: The id of the virtual descendant.

setViewIdResourceName

public void setViewIdResourceName (String viewIdResName)

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

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

Parameters
viewIdResName String: The id resource name.

setVisibleToUser

public void setVisibleToUser (boolean visibleToUser)

Sets whether this node is visible to the user.

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

Parameters
visibleToUser boolean: Whether the node is visible to the user.

Throws
IllegalStateException If called from an AccessibilityService.

toString

public String toString ()

Returns a string representation of the object. In general, the toString method returns a string that "textually represents" this object. The result should be a concise but informative representation that is easy for a person to read. It is recommended that all subclasses override this method.

The toString method for class Object returns a string consisting of the name of the class of which the object is an instance, the at-sign character `@', and the unsigned hexadecimal representation of the hash code of the object. In other words, this method returns a string equal to the value of:

 getClass().getName() + '@' + Integer.toHexString(hashCode())
 

Returns
String a string representation of the object.

writeToParcel

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.

Parameters
parcel Parcel: The Parcel in which the object should be written.

flags int: Additional flags about how the object should be written. May be 0 or Parcelable.PARCELABLE_WRITE_RETURN_VALUE. Value is either 0 or a combination of Parcelable.PARCELABLE_WRITE_RETURN_VALUE, and android.os.Parcelable.PARCELABLE_ELIDE_DUPLICATES