我是uiautomator的新手。在屏幕上我想选择一个具有资源ID的元素。但是有这么多元素具有相同的资源ID(例如在Instagram应用配置文件中所有视频和具有相同资源ID的图像) )。有什么方法可以让我得到一个具有相同资源ID的所有这些元素的列表吗?元素的唯一可区别特征是它的索引。
答案 0 :(得分:0)
您可以使用UiCollection而不是UiObject获取所有元素:
UiCollection element = new UiCollection(new UiSelector()....)
但是我不知道如何处理这个后记。我自己也面临着类似的问题。
答案 1 :(得分:0)
public ArrayList<UiObject> getComponents(UiSelector selector) {
ArrayList<UiObject> objects = new ArrayList<UiObject>();
boolean next = true;
int i = 0;
while(next) {
UiObject obj = new UiObject(selector.instance(i++));
if(obj.exists())
objects.add(obj);
else
next = false;
}
return objects;
}
它将获取UiObject类的ArrayList中的所有组件,这些组件符合选择器条件。
请保留作者和许可证:)
版权所有(c)2016 Dariusz Mika