UiScrollable is a UiCollection and provides support for searching for items in a scrollable user interface (UI) elements. This class can be used with horizontally or vertically scrollable controls.
UiScrollable是一個UiCollection(這東西還沒搞懂),我們可以使用它,在可滑動的頁面(水平滑動或上下滑動都可以)上尋找我們想要的控制項(item)。
例1:下面的這個scrollClickObject方法就是使用UiScrollable,來自動選擇我們想要點擊的那個控制項。
複製代碼 代碼如下:public void scrollClickObject(String targetClassName,String targetName) throws UiObjectNotFoundException {
UiScrollable collectionObject = new UiScrollable(new UiSelector().scrollable(true));
if(collectionObject.exists()) {
UiObject scrollableObject = collectionObject.getChildByText(new UiSelector().className(targetClassName), targetName);
scrollableObject.clickAndWaitForNewWindow();
} else {
UiObject targetObject = new UiObject(new UiSelector().className(targetClassName).text(targetName));
targetObject.clickAndWaitForNewWindow();
}
}
首先定義一個UiScrollable對象,識別這個對象的唯一條件就是,螢幕上有可滑動的控制項。(這裡有一個問題,就是如果螢幕上同時存在2個可滑動的控制項,就會報錯了)
然後我們判斷這個可滑動對象是否存在
•存在,則使用getChildByText方法,擷取我們想要點擊的那個控制項,然後點擊它
•不存在,則說明頁面不可滑動,也就是所有控制項均已顯示在介面上。那我們就可以直接使用UiObject擷取控制項並操作它。