您的位置:首页 > 移动开发 > Objective-C

UiObject官方文档,个人翻译

2015-11-02 16:32 661 查看


UiObject

extends Object

java.lang.Object
   ↳android.support.test.uiautomator.UiObject    继承结构


Known
Direct Subclasses 已知的直接子类

UiCollection



Known
Indirect Subclasses 已知的间接子类

UiScrollable


Class Overview 类的简介

A UiObject is a representation of a view. It is not in any way directly bound to a view as an object reference. A UiObject contains information to help it locate a matching view at runtime based on the 
UiSelector
 properties
specified in its constructor. Once you create an instance of a UiObject, it can be reused for different views that match the selector criteria.
一个UiObject 代表一个View。它不是直接绑定View,作为一个实例对象的引用。……………………笨的已经翻译不下去了,打脸中………………


Constants 常量


protected static final int FINGER_TOUCH_HALF_WIDTH

Constant Value: 20 (0x00000014) 值 20


protected static final int SWIPE_MARGIN_LIMIT

Constant Value: 5 (0x00000005)  值 5


protected static final long WAIT_FOR_EVENT_TMEOUT

This constant is deprecated.

use 
setScrollAcknowledgmentTimeout(long)


Constant Value: 3000 (0x0000000000000bb8) 3000毫秒


protected static final long WAIT_FOR_SELECTOR_POLL

Constant Value: 1000 (0x00000000000003e8) 1000


protected static final long WAIT_FOR_SELECTOR_TIMEOUT

This constant is deprecated.

use 
setWaitForSelectorTimeout(long)


Constant Value: 10000 (0x0000000000002710) 10000


protected static final long WAIT_FOR_WINDOW_TMEOUT

Constant Value: 5500 (0x000000000000157c)


Public Constructors 公开的构造方法


public UiObject (UiSelector selector)

This constructor is deprecated. 这个构造方法不建议使用………………

Use 
findObject(UiSelector)
 instead.
This version hides UiObject's dependency on UiDevice and is prone to misuse.

Constructs a UiObject to represent a view that matches the specified selector criteria.

使用 findObject(Uiselector )代替 。  ……后面怡然翻译不下去了……


Public Methods 公有方法 (API)


public void clearTextField ()

Clears the existing text contents in an editable field. The 
UiSelector
 of
this object must reference a UI element that is editable. When you call this method, the method sets focus on the editable field, selects all of its existing content, and clears it by sending a DELETE key press
清除在editable上的已存在的文本内容。

Throws
 UiObjectNotFoundException
UiObjectNotFoundException 
 抛出UiObjectNotFoundException


public boolean click ()

Performs a click at the center of the visible bounds of the UI element represented by this UiObject.
点击一个View的中心位置

Returns
true id successful else false
成功返回true,否则返回false

Throws
 UiObjectNotFoundException
UiObjectNotFoundException 
会抛出UiObjectNotFoundExcption异常


public boolean clickAndWaitForNewWindow (long timeout)

Performs a click at the center of the visible bounds of the UI element represented by this UiObject and waits for window transitions. This method differ from 
click()
 only
in that this method waits for a a new window transition as a result of the click. Some examples of a window transition:
UiObject代表的元素View,会在中心位置执行一次点击事件,然后等待窗口过渡。 这个方法与click()的不同是,就要等待窗口。 一些窗口过渡的例子
launching a new activity 启动一个新的Activitybringing up a pop-up menu 弹出一个菜单bringing up a dialog 弹出一个对话框

Parameters 参数
timeouttimeout before giving up on waiting for a new window 
放弃等待新窗口之前的时间

Returns
true if the event was triggered, else false
触发会返回true,否则返回false

Throws
 UiObjectNotFoundException
UiObjectNotFoundException

抛出UiObjectNotFoundException
 


public boolean clickAndWaitForNewWindow ()

Waits for window transitions that would typically take longer than the usual default timeouts. See 
clickAndWaitForNewWindow(long)


Returns
true if the event was triggered, else false

Throws
 UiObjectNotFoundException
UiObjectNotFoundException 


public boolean clickBottomRight ()

Clicks the bottom and right corner of the UI element
点击View的右下角

Returns
true on success 成功会返回true

Throws
 UiObjectNotFoundException
UiObjectNotFoundException 


public boolean clickTopLeft ()

Clicks the top and left corner of the UI element
点击元素的左上角

Returns
true on success 

Throws
 UiObjectNotFoundException
UiObjectNotFoundException 


public boolean dragTo (UiObject destObj,
int steps)

Drags this object to a destination UiObject. The number of steps specified in your input parameter can influence the drag speed, and varying speeds may impact the results. Consider evaluating different
speeds when using this method in your tests.
拖拽当前object到目标UiObjecct。步数明确你的输入范围,可以影响你的拖拽速度,不同的速度会影响你的结果。使用此方法测试的时候,考虑评估不同的速度。

Parameters
destObjthe destination UiObject. 目标UiObject
stepsusually 40 steps. You can increase or decrease the steps to change the speed.
一般是40步,你可以增加或者减少步数而改变速度

Returns
true if successful 成功会返回true

Throws
 UiObjectNotFoundException
UiObjectNotFoundException

抛出UiObjectNotFoundException
 


public boolean dragTo (int destX, int destY, int steps)

Drags this object to arbitrary coordinates. The number of steps specified in your input parameter can influence the drag speed, and varying speeds may impact the results. Consider evaluating different
speeds when using this method in your tests.
拖拽当前object到任意的坐标。 明确你的范围步数可影响拖拽速度,不同的速度影响结果。你在使用此方法的测试的时候,试着评估下不同的速度。

Parameters
destXthe X-axis coordinate. 坐标x
destYthe Y-axis coordinate. 坐标y
stepsusually 40 steps. You can increase or decrease the steps to change the speed.
步长,通常是40,有可以增加或减少步长以改变速度

Returns
true if successful

Throws
 UiObjectNotFoundException
UiObjectNotFoundException

抛出UiObjectFoundException
 


public boolean exists ()

Check if view exists. This methods performs a 
waitForExists(long)
 with
zero timeout. This basically returns immediately whether the view represented by this UiObject exists or not. If you need to wait longer for this view, then see 
waitForExists(long)
.
检查View存在,这个方法执行waitForExists(long)然后传入timeout是0。

Returns
true if the view represented by this UiObject does exist


public Rect getBounds ()

Returns the view's 
bounds
 property. See 
getVisibleBounds()

返回View的多边形属性

Returns
Rect 返回一个Rect实例对象

Throws
 UiObjectNotFoundException
UiObjectNotFoundException 


public UiObject getChild (UiSelector selector)

Creates a new UiObject for a child view that is under the present UiObject.
创建一个UiObject用于代表父UiObject的子View

Parameters
selectorfor child view to match
Returns
a new UiObject representing the child view
返回一个新的UiObject实例对象表示子View

Throws
UiObjectNotFoundException 


public int getChildCount ()

Counts the child views immediately under the present UiObject.
用于UiObject下面有多个子View

Returns
the count of child views.
返回一个UiObject拥有的子View数量

Throws
 UiObjectNotFoundException
UiObjectNotFoundException 


public String getClassName ()

Retrieves the 
className
 property of the UI element.

Returns
class name of the current node represented by this UiObject
当前用于表示的UiObject的class name

Throws
UiObjectNotFoundExceptionif no match was found


public String getContentDescription ()

Reads the 
content_desc
 property of the UI element

Returns
value of node attribute "content_desc"
返回xml中属性为content_desc的值

Throws
 UiObjectNotFoundException
UiObjectNotFoundException 


public UiObject getFromParent (UiSelector selector)

Creates a new UiObject for a sibling view or a child of the sibling view, relative to the present UiObject.

Parameters
selectorfor a sibling view or children of the sibling view
Returns
a new UiObject representing the matched view
返回一个表示过滤View之后的一个新的UiObject,其实就是返回父UiObject

Throws
 UiObjectNotFoundException
UiObjectNotFoundException 


public String getPackageName ()

Reads the view's 
package
 property

Returns
true if it is else false
返回View的包名

Throws
 UiObjectNotFoundException
UiObjectNotFoundException 


public final UiSelector getSelector ()

Debugging helper. A test can dump the properties of a selector as a string to its logs if needed. 
getSelector().toString();


Returns
UiSelector

返回一个UiSelector实例对象


public String getText ()

Reads the 
text
 property of the UI element

Returns
text value of the current node represented by this UiObject
返回当前UiObject的text内容 嘿嘿,这个方法不错哦,例如:有个Button 叫 ‘点我’,那么就会返回‘点我’了

Throws
UiObjectNotFoundExceptionif no match could be found


public Rect getVisibleBounds ()

Returns the visible bounds of the view. If a portion of the view is visible, only the bounds of the visible portion are reported.

Returns
Rect 
返回一个多边形Rect实例对象

Throws
 UiObjectNotFoundException
UiObjectNotFoundException 
See Also
getBounds()



public boolean isCheckable ()

Checks if the UI element's 
checkable
 property is currently true.

Returns
true if it is else false
返回当前checkable属性,如果可以返回true,否则返回false

Throws
 UiObjectNotFoundException
UiObjectNotFoundException 


public boolean isChecked ()

Check if the UI element's 
checked
 property is currently true

Returns
true if it is else false
返回当前View的 check属性

Throws
UiObjectNotFoundException 


public boolean isClickable ()

Checks if the UI element's 
clickable
 property is currently true.

Returns
true if it is else false
返回当前View能否点击,true代表可以点击,false代表不可点击

Throws
 UiObjectNotFoundException
UiObjectNotFoundException 


public boolean isEnabled ()

Checks if the UI element's 
enabled
 property is currently true.

Returns
true if it is else false
返回当前View是否已经是激活状态

Throws
 UiObjectNotFoundException
UiObjectNotFoundException 


public boolean isFocusable ()

Check if the UI element's 
focusable
 property is currently true.

Returns
true if it is else false
返回当前View能否获得焦点

Throws
 UiObjectNotFoundException
UiObjectNotFoundException 


public boolean isFocused ()

Check if the UI element's 
focused
 property is currently true

Returns
true if it is else false
返回当前View是否已经获得焦点

Throws
 UiObjectNotFoundException
UiObjectNotFoundException 


public boolean isLongClickable ()

Check if the view's 
long-clickable
 property is currently true

Returns
true if it is else false
返回当前View是否支持长按事件

Throws
 UiObjectNotFoundException
UiObjectNotFoundException 


public boolean isScrollable ()

Check if the view's 
scrollable
 property is currently true

Returns
true if it is else false
返回当前View是否可以支持滑动事件

Throws
 UiObjectNotFoundException
UiObjectNotFoundException 


public boolean isSelected ()

Checks if the UI element's 
selected
 property is currently true.

Returns
true if it is else false
返回当前View是否已经选择

Throws
 UiObjectNotFoundException
UiObjectNotFoundException 


public boolean longClick ()

Long clicks the center of the visible bounds of the UI element

Returns
true if operation was successful
返回当前View是否成功响应长按事件

Throws
 UiObjectNotFoundException
UiObjectNotFoundException 


public boolean longClickBottomRight ()

Long clicks bottom and right corner of the UI element

Returns
true if operation was successful
返回长按右下角是否成功

Throws
 UiObjectNotFoundException
UiObjectNotFoundException 


public boolean longClickTopLeft ()

Long clicks on the top and left corner of the UI element

Returns
true if operation was successful
返回长按左上角是否成功

Throws
 UiObjectNotFoundException
UiObjectNotFoundException 


public boolean performMultiPointerGesture (PointerCoords... touches) 参数还是可变参数,好high,接受的是PointerCoords实力对象哦

Performs a multi-touch gesture. You must specify touch coordinates for at least 2 pointers. Each pointer must have all of its touch steps defined in an array of 
MotionEvent.PointerCoords
.
You can use this method to specify complex gestures, like circles and irregular shapes, where each pointer may take a different path. To create a single point on a pointer's touch path: 
PointerCoords p = new PointerCoords(); p.x = stepX; p.y
= stepY; p.pressure = 1; p.size = 1;

哈哈,到了手势阶段,爽了

Parameters
touchesrepresents the pointers' paths. Each 
MotionEvent.PointerCoords
 array
represents a different pointer. Each
MotionEvent.PointerCoords
 in
an array element represents a touch point on a pointer's path.
Returns
true
 if all touch events for this gesture are injected successfully, 
false
 otherwise


public boolean performTwoPointerGesture (Point startPoint1, Point startPoint2, Point endPoint1, Point endPoint2, int steps)

Generates a two-pointer gesture with arbitrary starting and ending points.

Parameters
startPoint1start point of pointer 1
startPoint2start point of pointer 2
endPoint1end point of pointer 1
endPoint2end point of pointer 2
stepsthe number of steps for the gesture. Steps are injected about 5 milliseconds apart, so 100 steps may take around 0.5 seconds to complete.
Returns
true
 if all touch events for this gesture are injected successfully, 
false
 otherwise


public boolean pinchIn (int percent, int steps)

Performs a two-pointer gesture, where each pointer moves diagonally toward the other, from the edges to the center of this UiObject .

Parameters
percentpercentage of the object's diagonal length for the pinch gesture
stepsthe number of steps for the gesture. Steps are injected about 5 milliseconds apart, so 100 steps may take around 0.5 seconds to complete.
Returns
true
 if all touch events for this gesture are injected successfully, 
false
 otherwise

Throws
 UiObjectNotFoundException
UiObjectNotFoundException 


public boolean pinchOut (int percent, int steps)

Performs a two-pointer gesture, where each pointer moves diagonally opposite across the other, from the center out towards the edges of the this UiObject.

Parameters
percentpercentage of the object's diagonal length for the pinch gesture
stepsthe number of steps for the gesture. Steps are injected about 5 milliseconds apart, so 100 steps may take around 0.5 seconds to complete.
Returns
true
 if all touch events for this gesture are injected successfully, 
false
 otherwise

Throws
 UiObjectNotFoundException
UiObjectNotFoundException 


public boolean setText (String text)

Sets the text in an editable field, after clearing the field's content.
The 
UiSelector
 selector
of this object must reference a UI element that is editable.
When you call this method, the method sets focus on the editable field, clears its existing content, then injects your specified text into the field.
If you want to capture the original contents of the field, call 
getText()
 first.
You can then modify the text and use this method to update the field.
Improvements: Post API Level 19 (KitKat release), the underlying implementation is updated to a dedicated set text accessibility action, and it also now supports Unicode.

Parameters
textstring to set
Returns
true if operation is successful

Throws
 UiObjectNotFoundException
UiObjectNotFoundException 


public boolean swipeDown (int steps) 向下滑动

Performs the swipe down action on the UiObject. The swipe gesture can be performed over any surface. The targeted UI element does not need to be scrollable. See also:
scrollToBeginning(int)

scrollToEnd(int)

scrollBackward()

scrollForward()


Parameters
stepsindicates the number of injected move steps into the system. Steps are injected about 5ms apart. So a 100 steps may take about 1/2 second to complete.
Returns
true if successful 如果成功返回True

Throws
 UiObjectNotFoundException
UiObjectNotFoundException 


public boolean swipeLeft (int steps)

Performs the swipe left action on the UiObject. The swipe gesture can be performed over any surface. The targeted UI element does not need to be scrollable. See also:
scrollToBeginning(int)

scrollToEnd(int)

scrollBackward()

scrollForward()


Parameters
stepsindicates the number of injected move steps into the system. Steps are injected about 5ms apart. So a 100 steps may take about 1/2 second to complete.
Returns
true if successful

Throws
 UiObjectNotFoundException
UiObjectNotFoundException 


public boolean swipeRight (int steps)

Performs the swipe right action on the UiObject. The swipe gesture can be performed over any surface. The targeted UI element does not need to be scrollable. See also:
scrollToBeginning(int)

scrollToEnd(int)

scrollBackward()

scrollForward()


Parameters
stepsindicates the number of injected move steps into the system. Steps are injected about 5ms apart. So a 100 steps may take about 1/2 second to complete.
Returns
true if successful

Throws
 UiObjectNotFoundException
UiObjectNotFoundException 


public boolean swipeUp (int steps)

Performs the swipe up action on the UiObject. See also:
scrollToBeginning(int)

scrollToEnd(int)

scrollBackward()

scrollForward()


Parameters
stepsindicates the number of injected move steps into the system. Steps are injected about 5ms apart. So a 100 steps may take about 1/2 second to complete.
Returns
true of successful

Throws
 UiObjectNotFoundException
UiObjectNotFoundException 


public boolean waitForExists (long timeout)

Waits a specified length of time for a view to become visible. This method waits until the view becomes visible on the display, or until the timeout has elapsed. You can use this method in situations
where the content that you want to select is not immediately displayed.

Parameters
timeoutthe amount of time to wait (in milliseconds)
Returns
true if the view is displayed, else false if timeout elapsed while waiting


public boolean waitUntilGone (long timeout)

Waits a specified length of time for a view to become undetectable. This method waits until a view is no longer matchable, or until the timeout has elapsed. A view becomes undetectable when the 
UiSelector
 of
the object is unable to find a match because the element has either changed its state or is no longer displayed. You can use this method when attempting to wait for some long operation to compete, such as downloading a large file or connecting to a remote
server.

Parameters
timeouttime to wait (in milliseconds)
Returns
true if the element is gone before timeout elapsed, else false if timeout elapsed but a matching element is still found.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: