UiDevice的UiObject的讲解

UiObject :整个UI里面的某个元素或控件。可以通过UiObject对象来对控件模拟用户的操作。UiObject的构造函数里是传入一个UiSelector对象。所以我们要通过UiSelector来查找我们需要的元素或控件


uiobject : ui控件
uiselector:是一个过滤的条件的操作


操作包括:文本德尔输入和清楚、手势操作、点击与长按、获取子类、拖动与滑动、属性的获取以及对象是否存在。


一个UIObject对象视图的表示,它不以任何一个方式直接绑定到一个视图作为对象的引用。一个uiobject包含的信息帮助它在基于它的构造函数指定的uiselector性能运行时找到一个匹配的观点。一旦你创建了一个uiobject实例,可以使用不同的视图选择匹配准则。


Constants
int FINGER_TOUCH_HALF_WIDTH
int SWIPE_MARGIN_LIMIT
long WAIT_FOR_EVENT_TMEOUTThis constant is deprecated. use setScrollAcknowledgmentTimeout(long)
long WAIT_FOR_SELECTOR_POLL
long WAIT_FOR_SELECTOR_TIMEOUTThis constant is deprecated. use setWaitForSelectorTimeout(long)
long WAIT_FOR_WINDOW_TMEOUT

Public Constructors
UiObject(UiSelector selector) 过时,
替代函数为:findObject(UiSelector)

void clearTextField() 清楚已经存在扥文本内容在一个可编辑的区域
boolean click() 点击可视化的区域的的UI元素的区域代表通过这个uiobject
boolean clickAndWaitForNewWindow(long timeout)
在这uiobject为代表的UI元素的可见范围的中心点击并等待窗口转换。
boolean clickAndWaitForNewWindow()
等待窗口转换,通常会采取比通常的默认超时时间。
boolean clickBottomRight()  点击用户界面元素的右下角
boolean clickTopLeft()   点击用户界面元素的左上角
boolean dragTo(UiObject destObj, int steps) 拖动这个对象到一个目标对象
boolean dragTo(int destX, int destY, int steps)
拖动一个对象到到一个指定的座标位置。
boolean exists()  检查界面是否存在
Rect getBounds() 返回view的bounds的属性
UiObject getChild(UiSelector selector)
创建一个孩子的观点,是目前uiobject下一个新的uiobject。
int getChildCount()计算出孩子但当前界面的孩子数目
String getClassName() 检索的UI元素的className属性。
String getContentDescription() 读content_desc UI元素的属性
UiObject getFromParent(UiSelector selector)
创建视图的兄弟姐妹或兄弟姐妹的孩子一个新的uiobject来看,相对于目前的uiobject。
String getPackageName()
读取视图的包属性
final UiSelector getSelector()
调试助手。
String getText()
读取用户界面元素的文本属性
Rect getVisibleBounds()
返回视图的可视范围。
boolean isCheckable()
检查用户界面元素的使用性能是目前真正。
boolean isChecked()
检查用户界面元素的检查属性是否正确
boolean isClickable()
检查用户界面元素的可点击的物业目前是真实的。
boolean isEnabled()
检查用户界面元素的启用属性是否为当前真实。
boolean isFocusable()
检查UI元素的聚焦性能是目前真正。
boolean isFocused()
检查当前UI元素是否为真
boolean isLongClickable()
检查视图的长按属性
boolean isScrollable()
检查当前的属性是否可以移动
boolean isSelected()
检查UI元素的选择属性当前是否为真。
boolean longClick()
长点击UI控件元素
boolean longClickBottomRight()
长点击用户的下部和右上角的用户界面元素。
boolean longClickTopLeft() 
长点击用户的顶部和左上角的用户界面元素。
boolean performMultiPointerGesture(PointerCoords... touches)
多点触摸手势
boolean performTwoPointerGesture(Point startPoint1, Point startPoint2, Point endPoint1, Point endPoint2, int steps)
生成两点手势任意一个点开始到一个点结束。
boolean pinchIn(int percent, int steps)
执行一二个指针的手势,每个指针移动斜向其他,从边缘到中心的这uiobject
boolean pinchOut(int percent, int steps)
相反
boolean setText(String text)
设置文本到可编辑的区域(*然后结算该区域的内容)。
boolean swipeDown(int steps)
执行向下滑的操作
boolean swipeLeft(int steps)
执行向左滑的操作
boolean swipeRight(int steps)
执行向右滑的操作
boolean swipeUp(int steps)
执行向上滑的操作
boolean waitForExists(long timeout)
等待一个视图的指定时间长度,以便成为可测的。
boolean waitUntilGone(long timeout)
等待一个视图的指定时间长度,以便成为不可测的。
Protected Methods 保护方法
protected AccessibilityNodeInfo findAccessibilityNodeInfo (long timeout)  
timeout 是秒为单位

总结:UiObject就是ui控件的对象,可以用于操作。
















发布了144 篇原创文章 · 获赞 11 · 访问量 24万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章