我有一个UITableView,它包含大约50个元素。在任何一点上,屏幕上只能看到其中的6个。我想选择一个未添加到表格视图的单元格,或者说我需要从数据列表中选择第25个项目。
现在我使用此方法点击tableview中的单元格
wait.until(ExpectedConditions.visibilityOf(driver.findElementByAccessibilityId(element))).click();
但它没有作为第25个元素工作尚未添加到视图中。请注意,我在代码中动态添加表视图单元的辅助功能标识符。
我该如何做到这一点?
*****添加了更多细节******
我有表格视图单元格显示两个文本视图。货币短名称和货币长名称。
考虑示例
GBP
英国磅
现在,该tableview单元格的辅助功能标识符设置为 英镑。现在我试过
driver.scrollTo(" GBP")和driver.scrollTo(" Great Britain Pounds")
两者都没有用。我收到一条错误消息
A element could not be located on the page using the Search parameter
感谢。
答案 0 :(得分:1)
String ReqN = "Your required string";
boolean flag = true;
while (flag) {
for (i=1;i<=6;i++) {
String GetN = driver.findElement(By.xpath("//android.widget.HorizontalScrollView/android.widget.LinearLayout[" + i + "]")).getText();
if (GetN.equals(ReqN)) {
flag = false;
System.out.println("Your result found");
}
}
if (flag) {
driver.swipe(145, 765, 145, 180, 3000);
}
}
String ReqN ::您的预定义字符串
String GetN :: Text get for each element [1到6,我们得到for循环]
所以它得到了文字&amp;匹配前六个元素如果找不到预定义的文本然后从给定的轴(第6个元素到第1个元素)进行滑动,那么你将得到新的6个元素&amp;循环将再次执行。