uiautomator中的UiObject学习笔记
UiObject为所有对象类的父类,UiCollection/UiScrollable都继承与该类。UI界面上能操作的都可以称为UiObject.
exists()/waitForExists(long timeout)
判断是否存在/在一定时间内是否等到该控件出现。
waitUntilGone(long timeout)
在一定时间内判断控件是否消失。
getBounds()/getVisibleBounds()/getVisibleBounds(AccessibilityNodeInfo node)
得到控件的区域rect/获得当前控件可见区域/获取某一个控件的可见区域。在可滚动的控件中的子控件,getVisibleBounds和getBounds是不一样的。一个代表实际区域,一个代表用户可以看见的区域
getPackageName()
当前控件的packageName名
isLongClickable == 是否可长点击
isScrollable == 是否可滚动
isFocusable ==
isFocused()/
isClickable()/
isEnable()/
isChecked()/
isSelected()
是否可长点击/滚动/可获得焦点/获得焦点/点击/可用/开关已开/已选择
clearTextField()
在可编辑控件的(rect.left,rect.centerY)点长按,如果出现"select all"点击选择所有,清楚文本。
setText(String text)
在输入框中输入text,可能会由于输入法的不同跟你填入的字符串不同。先删除原有的,然后点击输入框,输入text.
getContentDescription()/getText()
得到content-desc的值/得到文本框里的值
longClickTopLeft()/longClick()/clickBottomRight/longClickBottomRight/clickTopLeft
长按控件边框的左上角/长按控件边框的中心/点击控件边框的右下角/长按控件边框的右下角/点击控件边框的左上角(距边框5个像素点)
clickAndWaitForNewWindow()/clickAndWaitForNewWindow(long timeout)
点击控件等待新窗口的出现/有时间限制的等待,默认为5.5秒
click()
在控件的中心点点击
getScrollableParent(AccessibilityNodeInfo info)
等待当前控件的可滚动的父控件
swipeLeft(int steps)
从距右边框5个像素点的位置滑动到距左边框5个像素点的位置,所用步伐为steps.Y坐标为控件的中心点Y坐标
swipeRight(int steps)
同上,方向相反
swipeDown(int steps)
从距上边框5个像素点的位置滑动到距下边框5个像素点的位置,所用步伐为steps,X坐标为控件的中心点坐标
swipeUp(int steps)
同上,方向相反
findAccessibilityNodeInfo(long timeout)
得到当前控件的AccessibilityNodeInfo对象
getChildCount()
得到控件的子控件个数,就是在树形结构中的下一层节点排列的所有子节点,后面的层级不算在内。包括滚动栏里没显示的控件调用的是AccessibiltyNodeInfo.getChildCount()方法
getFromParent(UiSelector uiSelector)
从当前控件的父节点中找到符合选择器条件的控件UiObject对象
getChild(UiSelector uiSelector)
在该控件的子子孙孙中找到符合选择器条件的控件
getInteractionController()
得到InteractionController对象
getQueryController()
得到QueryController对象
getSelector()
得到当前控件的UiSelector对象
UiObject为所有对象类的父类,UiCollection/UiScrollable都继承与该类。UI界面上能操作的都可以称为UiObject.
exists()/waitForExists(long timeout)
判断是否存在/在一定时间内是否等到该控件出现。
waitUntilGone(long timeout)
在一定时间内判断控件是否消失。
getBounds()/getVisibleBounds()/getVisibleBounds(AccessibilityNodeInfo node)
得到控件的区域rect/获得当前控件可见区域/获取某一个控件的可见区域。在可滚动的控件中的子控件,getVisibleBounds和getBounds是不一样的。一个代表实际区域,一个代表用户可以看见的区域
getPackageName()
当前控件的packageName名
isLongClickable == 是否可长点击
isScrollable == 是否可滚动
isFocusable ==
isFocused()/
isClickable()/
isEnable()/
isChecked()/
isSelected()
是否可长点击/滚动/可获得焦点/获得焦点/点击/可用/开关已开/已选择
clearTextField()
在可编辑控件的(rect.left,rect.centerY)点长按,如果出现"select all"点击选择所有,清楚文本。
setText(String text)
在输入框中输入text,可能会由于输入法的不同跟你填入的字符串不同。先删除原有的,然后点击输入框,输入text.
getContentDescription()/getText()
得到content-desc的值/得到文本框里的值
longClickTopLeft()/longClick()/clickBottomRight/longClickBottomRight/clickTopLeft
长按控件边框的左上角/长按控件边框的中心/点击控件边框的右下角/长按控件边框的右下角/点击控件边框的左上角(距边框5个像素点)
clickAndWaitForNewWindow()/clickAndWaitForNewWindow(long timeout)
点击控件等待新窗口的出现/有时间限制的等待,默认为5.5秒
click()
在控件的中心点点击
getScrollableParent(AccessibilityNodeInfo info)
等待当前控件的可滚动的父控件
swipeLeft(int steps)
从距右边框5个像素点的位置滑动到距左边框5个像素点的位置,所用步伐为steps.Y坐标为控件的中心点Y坐标
swipeRight(int steps)
同上,方向相反
swipeDown(int steps)
从距上边框5个像素点的位置滑动到距下边框5个像素点的位置,所用步伐为steps,X坐标为控件的中心点坐标
swipeUp(int steps)
同上,方向相反
findAccessibilityNodeInfo(long timeout)
得到当前控件的AccessibilityNodeInfo对象
getChildCount()
得到控件的子控件个数,就是在树形结构中的下一层节点排列的所有子节点,后面的层级不算在内。包括滚动栏里没显示的控件调用的是AccessibiltyNodeInfo.getChildCount()方法
getFromParent(UiSelector uiSelector)
从当前控件的父节点中找到符合选择器条件的控件UiObject对象
getChild(UiSelector uiSelector)
在该控件的子子孙孙中找到符合选择器条件的控件
getInteractionController()
得到InteractionController对象
getQueryController()
得到QueryController对象
getSelector()
得到当前控件的UiSelector对象