点击元素中的GridView我有线性布局的列表。 我想点击一个应用程序,我可以在页面上滚动,但无法点击应用程序。
我没有得到任何方式从GridView控件内单击项目。
任何机构可以帮助我解决我的问题呢?
点击元素中的GridView我有线性布局的列表。 我想点击一个应用程序,我可以在页面上滚动,但无法点击应用程序。
我没有得到任何方式从GridView控件内单击项目。
任何机构可以帮助我解决我的问题呢?
例如电网,如果我有我的网格20个项目,但我的屏幕能够显示只有10根据我的屏幕尺寸,然后在UI的Automator项目也只得到那些可以在屏幕上。当我再滚动剩余的元素将在UI的Automator
可见,你甚至可以在网格视图中单击应用程序。滚动后,必须重新加载驱动程序的内容,因为当你再滚动新项目将显示那些不会提供在以前的驱动程序内容
WebDriver wd = driver = new RemoteWebDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);
boolean flag = false;
WebElement firstItem = null;
do {
List<WebElement> allApps = wd.findElements(By.xpath("//android.widget.ListView"));
if (firstItem.getText().equals(allApps.get(0).getText())) {
System.out.println("Reached to end of list");
break;
}
for (WebElement webElement : allApps) {
if (webElement.getText().contains("Your App Name")) {
webElement.click();
flag = true;
break;
}
}
firstItem = allApps.get(0);
if (!flag) {
horizontalScroll();
}
} while (!flag);
试试这个,让我知道,如果你面对任何问题
谢谢。但我仍然可以点击元素。错误将会失败定位元素。 – shilpa
尝试调试并查看到底发生了什么。你是否正在调试所有App?如果您正在获取所有应用程序,然后检查是否将文本与确切的应用程序进行比较for for循环中的名称 – Karthikeya
添加System.out.println(webElement.getText());并查看它是否打印所有应用程序名称 – Karthikeya
请找到与它相匹配的图像来寻找分层。 (0)的FrameLayout(0)的LinearLayout(0)的FrameLayout(0)的LinearLayout的ViewGroup(1)android.support.v4.widget.DrawerLayout的FrameLayout RelativeLayout的GridView的(0)的FrameLayout(1)的LinearLayout(0)的LinearLayout
首先让我们看看你的努力。 – Chirag