uiautomator1 做自动化的时候,有n个相同的class,怎样将这些相同的class的信息获取到,并存到集合里
时间: 2024-02-17 15:02:29 浏览: 20
可以通过使用 UiSelector 的 `className` 方法来获取相同 class 的元素信息,并使用 Java 的集合类(如 ArrayList)来存储这些元素信息。
下面是一个示例代码,可以获取 class 为 "exampleClass" 的所有元素,并将其 text 信息存储到一个 ArrayList 中:
```java
UiSelector selector = new UiSelector().className("exampleClass");
UiCollection collection = new UiCollection(selector);
ArrayList<String> texts = new ArrayList<String>();
int count = collection.getChildCount();
for (int i = 0; i < count; i++) {
UiObject child = collection.getChildByInstance(selector, i);
texts.add(child.getText());
}
```
其中,`UiSelector` 对象的 `className` 方法可以设置要查找的 class 名称,`UiCollection` 对象可以获取所有符合条件的元素,`getChildCount` 方法可以获取符合条件的元素个数,`getChildByInstance` 方法可以获取指定位置的元素,`getText` 方法可以获取元素的文本信息。最后,将每个元素的文本信息存储到一个 ArrayList 中即可。