Tim*_*and 6 android android-listview android-uiautomator
我正在尝试验证ListView中每个列表项中的文本并逐个向下滚动,以便我可以验证每个...但由于某种原因,我无法让它继续滚动列表验证每个元素.有没有人有任何运气自动化这种行动.这是我最接近的.如果这还不够,请告诉我:
UiScrollable scrollableList = new UiScrollable(new UiSelector()
.resourceId("com.example.app:id/listView")
.className(android.widget.ListView.class.getName())
.index(3));
for ( i = 0; i < 100; i++ ) {
UiObject listItem = scrollableList.getChildByText(new UiSelector()
.className("android.widget.RelativeLayout")
.instance(i), "Text Title");
UiObject textBody = listItem.getFromParent(new UiSelector()
.resourceId("com.example.app:id/textBody"));
System.out.println("Validating: " + textBody.getText());
Run Code Online (Sandbox Code Playgroud)
当时屏幕上只能看到5个listItem,因此当它尝试到达6时它会失败,因为它不能:
一个. 它不会尝试向前滚动以获得列表中的下一个
b. 即使它确实向前滚动以获得列表中的下一个,实例值将减少到5,而不是增加到6.
我在没有.instance()方法的情况下尝试过它,但在这种情况下,它只是反复遍历列表中的第一个项目而不进行到项目2,3,4等.
如果有人遇到过这个问题,我会很乐意反馈.
Sun*_*ntu -2
我已经在 python 中实现了相同的功能,而不是使用 java。我正在编写下面的逻辑,看看它是否对您有帮助。
while(i<100):
self.d.press('down')
print self.d(resourceID='android:id/text1').text
Run Code Online (Sandbox Code Playgroud)
此循环向下滚动最多 100 个元素,并返回下拉列表中的每个元素。
| 归档时间: |
|
| 查看次数: |
1260 次 |
| 最近记录: |