UiSelector

public class UiSelector
extends Object

java.lang.Object
   ↳ android.support.test.uiautomator.UiSelector


Specifies the elements in the layout hierarchy for tests to target, filtered by properties such as text value, content-description, class name, and state information. You can also target an element by its location in a layout hierarchy.

Summary

Public constructors

UiSelector()

Public methods

UiSelector checkable(boolean val)

Set the search criteria to match widgets that are checkable.

UiSelector checked(boolean val)

Set the search criteria to match widgets that are currently checked (usually for checkboxes).

UiSelector childSelector(UiSelector selector)

Adds a child UiSelector criteria to this selector.

UiSelector className(String className)

Set the search criteria to match the class property for a widget (for example, "android.widget.Button").

<T> UiSelector className(Class<T> type)

Set the search criteria to match the class property for a widget (for example, "android.widget.Button").

UiSelector classNameMatches(String regex)

Set the search criteria to match the class property for a widget, using a regular expression.

UiSelector clickable(boolean val)

Set the search criteria to match widgets that are clickable.

UiSelector description(String desc)

Set the search criteria to match the content-description property for a widget.

UiSelector descriptionContains(String desc)

Set the search criteria to match the content-description property for a widget.

UiSelector descriptionMatches(String regex)

Set the search criteria to match the content-description property for a widget.

UiSelector descriptionStartsWith(String desc)

Set the search criteria to match the content-description property for a widget.

UiSelector enabled(boolean val)

Set the search criteria to match widgets that are enabled.

UiSelector focusable(boolean val)

Set the search criteria to match widgets that are focusable.

UiSelector focused(boolean val)

Set the search criteria to match widgets that have focus.

UiSelector fromParent(UiSelector selector)

Adds a child UiSelector criteria to this selector which is used to start search from the parent widget.

UiSelector index(int index)

Set the search criteria to match the widget by its node index in the layout hierarchy.

UiSelector instance(int instance)

Set the search criteria to match the widget by its instance number.

UiSelector longClickable(boolean val)

Set the search criteria to match widgets that are long-clickable.

UiSelector packageName(String name)

Set the search criteria to match the package name of the application that contains the widget.

UiSelector packageNameMatches(String regex)

Set the search criteria to match the package name of the application that contains the widget.

UiSelector resourceId(String id)

Set the search criteria to match the given resource ID.

UiSelector resourceIdMatches(String regex)

Set the search criteria to match the resource ID of the widget, using a regular expression.

UiSelector scrollable(boolean val)

Set the search criteria to match widgets that are scrollable.

UiSelector selected(boolean val)

Set the search criteria to match widgets that are currently selected.

UiSelector text(String text)

Set the search criteria to match the visible text displayed in a widget (for example, the text label to launch an app).

UiSelector textContains(String text)

Set the search criteria to match the visible text in a widget where the visible text must contain the string in your input argument.

UiSelector textMatches(String regex)

Set the search criteria to match the visible text displayed in a layout element, using a regular expression.

UiSelector textStartsWith(String text)

Set the search criteria to match visible text in a widget that is prefixed by the text parameter.

String toString()

Protected methods

UiSelector cloneSelector()

Inherited methods

From class java.lang.Object

Public constructors

UiSelector

UiSelector ()

Public methods

checkable

UiSelector checkable (boolean val)

Set the search criteria to match widgets that are checkable. Typically, using this search criteria alone is not useful. You should also include additional criteria, such as text, content-description, or the class name for a widget. If no other search criteria is specified, and there is more than one matching widget, the first widget in the tree is selected.

Parameters
val boolean: Value to match
Returns
UiSelector UiSelector with the specified search criteria

checked

UiSelector checked (boolean val)

Set the search criteria to match widgets that are currently checked (usually for checkboxes). Typically, using this search criteria alone is not useful. You should also include additional criteria, such as text, content-description, or the class name for a widget. If no other search criteria is specified, and there is more than one matching widget, the first widget in the tree is selected.

Parameters
val boolean: Value to match
Returns
UiSelector UiSelector with the specified search criteria

childSelector

UiSelector childSelector (UiSelector selector)

Adds a child UiSelector criteria to this selector. Use this selector to narrow the search scope to child widgets under a specific parent widget.

Returns
UiSelector UiSelector with this added search criterion

className

UiSelector className (String className)

Set the search criteria to match the class property for a widget (for example, "android.widget.Button").

Parameters
className String: Value to match
Returns
UiSelector UiSelector with the specified search criteria

className

UiSelector className (Class<T> type)

Set the search criteria to match the class property for a widget (for example, "android.widget.Button").

Parameters
type Class: type
Returns
UiSelector UiSelector with the specified search criteria

classNameMatches

UiSelector classNameMatches (String regex)

Set the search criteria to match the class property for a widget, using a regular expression.

Parameters
regex String: a regular expression
Returns
UiSelector UiSelector with the specified search criteria

clickable

UiSelector clickable (boolean val)

Set the search criteria to match widgets that are clickable. Typically, using this search criteria alone is not useful. You should also include additional criteria, such as text, content-description, or the class name for a widget. If no other search criteria is specified, and there is more than one matching widget, the first widget in the tree is selected.

Parameters
val boolean: Value to match
Returns
UiSelector UiSelector with the specified search criteria

description

UiSelector description (String desc)

Set the search criteria to match the content-description property for a widget. The content-description is typically used by the Android Accessibility framework to provide an audio prompt for the widget when the widget is selected. The content-description for the widget must match exactly with the string in your input argument. Matching is case-sensitive.

Parameters
desc String: Value to match
Returns
UiSelector UiSelector with the specified search criteria

descriptionContains

UiSelector descriptionContains (String desc)

Set the search criteria to match the content-description property for a widget. The content-description is typically used by the Android Accessibility framework to provide an audio prompt for the widget when the widget is selected. The content-description for the widget must contain the string in your input argument. Matching is case-insensitive.

Parameters
desc String: Value to match
Returns
UiSelector UiSelector with the specified search criteria

descriptionMatches

UiSelector descriptionMatches (String regex)

Set the search criteria to match the content-description property for a widget. The content-description is typically used by the Android Accessibility framework to provide an audio prompt for the widget when the widget is selected. The content-description for the widget must match exactly with the string in your input argument.

Parameters
regex String: a regular expression
Returns
UiSelector UiSelector with the specified search criteria

descriptionStartsWith

UiSelector descriptionStartsWith (String desc)

Set the search criteria to match the content-description property for a widget. The content-description is typically used by the Android Accessibility framework to provide an audio prompt for the widget when the widget is selected. The content-description for the widget must start with the string in your input argument. Matching is case-insensitive.

Parameters
desc String: Value to match
Returns
UiSelector UiSelector with the specified search criteria

enabled

UiSelector enabled (boolean val)

Set the search criteria to match widgets that are enabled. Typically, using this search criteria alone is not useful. You should also include additional criteria, such as text, content-description, or the class name for a widget. If no other search criteria is specified, and there is more than one matching widget, the first widget in the tree is selected.

Parameters
val boolean: Value to match
Returns
UiSelector UiSelector with the specified search criteria

focusable

UiSelector focusable (boolean val)

Set the search criteria to match widgets that are focusable. Typically, using this search criteria alone is not useful. You should also include additional criteria, such as text, content-description, or the class name for a widget. If no other search criteria is specified, and there is more than one matching widget, the first widget in the tree is selected.

Parameters
val boolean: Value to match
Returns
UiSelector UiSelector with the specified search criteria

focused

UiSelector focused (boolean val)

Set the search criteria to match widgets that have focus. Typically, using this search criteria alone is not useful. You should also include additional criteria, such as text, content-description, or the class name for a widget. If no other search criteria is specified, and there is more than one matching widget, the first widget in the tree is selected.

Parameters
val boolean: Value to match
Returns
UiSelector UiSelector with the specified search criteria

fromParent

UiSelector fromParent (UiSelector selector)

Adds a child UiSelector criteria to this selector which is used to start search from the parent widget. Use this selector to narrow the search scope to sibling widgets as well all child widgets under a parent.

Returns
UiSelector UiSelector with this added search criterion

index

UiSelector index (int index)

Set the search criteria to match the widget by its node index in the layout hierarchy. The index value must be 0 or greater. Using the index can be unreliable and should only be used as a last resort for matching. Instead, consider using the instance(int) method.

Parameters
index int: Value to match
Returns
UiSelector UiSelector with the specified search criteria

instance

UiSelector instance (int instance)

Set the search criteria to match the widget by its instance number. The instance value must be 0 or greater, where the first instance is 0. For example, to simulate a user click on the third image that is enabled in a UI screen, you could specify a a search criteria where the instance is 2, the className(String) matches the image widget class, and enabled(boolean) is true. The code would look like this: new UiSelector().className("android.widget.ImageView") .enabled(true).instance(2);

Parameters
instance int: Value to match
Returns
UiSelector UiSelector with the specified search criteria

longClickable

UiSelector longClickable (boolean val)

Set the search criteria to match widgets that are long-clickable. Typically, using this search criteria alone is not useful. You should also include additional criteria, such as text, content-description, or the class name for a widget. If no other search criteria is specified, and there is more than one matching widget, the first widget in the tree is selected.

Parameters
val boolean: Value to match
Returns
UiSelector UiSelector with the specified search criteria

packageName

UiSelector packageName (String name)

Set the search criteria to match the package name of the application that contains the widget.

Parameters
name String: Value to match
Returns
UiSelector UiSelector with the specified search criteria

packageNameMatches

UiSelector packageNameMatches (String regex)

Set the search criteria to match the package name of the application that contains the widget.

Parameters
regex String: a regular expression
Returns
UiSelector UiSelector with the specified search criteria

resourceId

UiSelector resourceId (String id)

Set the search criteria to match the given resource ID.

Parameters
id String: Value to match
Returns
UiSelector UiSelector with the specified search criteria

resourceIdMatches

UiSelector resourceIdMatches (String regex)

Set the search criteria to match the resource ID of the widget, using a regular expression.

Parameters
regex String: a regular expression
Returns
UiSelector UiSelector with the specified search criteria

scrollable

UiSelector scrollable (boolean val)

Set the search criteria to match widgets that are scrollable. Typically, using this search criteria alone is not useful. You should also include additional criteria, such as text, content-description, or the class name for a widget. If no other search criteria is specified, and there is more than one matching widget, the first widget in the tree is selected.

Parameters
val boolean: Value to match
Returns
UiSelector UiSelector with the specified search criteria

selected

UiSelector selected (boolean val)

Set the search criteria to match widgets that are currently selected. Typically, using this search criteria alone is not useful. You should also include additional criteria, such as text, content-description, or the class name for a widget. If no other search criteria is specified, and there is more than one matching widget, the first widget in the tree is selected.

Parameters
val boolean: Value to match
Returns
UiSelector UiSelector with the specified search criteria

text

UiSelector text (String text)

Set the search criteria to match the visible text displayed in a widget (for example, the text label to launch an app). The text for the element must match exactly with the string in your input argument. Matching is case-sensitive.

Parameters
text String: Value to match
Returns
UiSelector UiSelector with the specified search criteria

textContains

UiSelector textContains (String text)

Set the search criteria to match the visible text in a widget where the visible text must contain the string in your input argument. The matching is case-sensitive.

Parameters
text String: Value to match
Returns
UiSelector UiSelector with the specified search criteria

textMatches

UiSelector textMatches (String regex)

Set the search criteria to match the visible text displayed in a layout element, using a regular expression. The text in the widget must match exactly with the string in your input argument.

Parameters
regex String: a regular expression
Returns
UiSelector UiSelector with the specified search criteria

textStartsWith

UiSelector textStartsWith (String text)

Set the search criteria to match visible text in a widget that is prefixed by the text parameter. The matching is case-insensitive.

Parameters
text String: Value to match
Returns
UiSelector UiSelector with the specified search criteria

toString

String toString ()

Returns
String

Protected methods

cloneSelector

UiSelector cloneSelector ()

Returns
UiSelector