標籤:
擷取列表子項目
一、相關API介紹
| 傳回值 |
API |
描述 |
| UiObject |
getChildByDescription(UiSelector childPattern, String text, boolean allowScrollSearch) |
是否允許滾動查看擷取具備UiSelector條件元素集合後再以文本描述條件尋找對象 |
| UiObject |
getChildByDescription(UiSelector childPattern, String text) |
預設滾動擷取具備UiSelector條件元素集合後再以文本描述條件尋找對象 |
| UiObject |
getChildByInstance(UiSelector childPattern, int instance) |
擷取具備UiSelector條件的子集,再從子集中按照執行個體篩選想要的元素(不滾動) |
| UiObject |
getChildByText(UiSelector childPattern, String text, boolean allowScrollSearch) |
是否允許滾動查看擷取具備UiSelector條件元素集合後再以文本條件尋找對象 |
| UiObject |
getChildByText(UiSelector childPattern, String text) |
預設滾動擷取具備UiSelector條件元素集合後再以文本條件尋找對象 |
二、API應用舉例
package com.testuiselector;import com.android.uiautomator.core.UiDevice;import com.android.uiautomator.core.UiObject;import com.android.uiautomator.core.UiObjectNotFoundException;import com.android.uiautomator.core.UiScrollable;import com.android.uiautomator.core.UiSelector;import com.android.uiautomator.testrunner.UiAutomatorTestCase;public class Demo extends UiAutomatorTestCase { /** * @param args */ public static void main(String[] args) { String jarName, testClass, testName, androidId; jarName="demo2"; testClass="com.testuiselector.Demo"; testName="testScrollGetChild"; androidId="1"; new UiAutomatorHelper(jarName, testClass, testName, androidId); } public void testScrollGetChild() throws UiObjectNotFoundException{ UiDevice.getInstance().pressHome(); sleep(1000); UiObject people=new UiObject(new UiSelector().text("People")); people.clickAndWaitForNewWindow(); UiScrollable scroll=new UiScrollable(new UiSelector().className("android.widget.ListView")); //指定可以滾動尋找子項目,可以成功找到在任何頁中的電話資訊 UiObject H=scroll.getChildByText(new UiSelector().className("android.widget.TextView"), "H", true); H.click(); //指定不可以滾動尋找子項目,如果尋找的電話資訊不在第一頁,會報錯 UiObject J=scroll.getChildByText(new UiSelector().className("android.widget.TextView"), "J", false); J.click(); //getChildByInstance,不可以滾動,因此尋找非第一頁的電話資訊會報錯 UiObject someone=scroll.getChildByInstance(new UiSelector().className("android.widget.TextView"), 20); someone.click(); }}Demo.java
二、相關API應用舉例
Android無線測試之—UiAutomator UiScrollable API介紹三