麻烦问下,LinearLayout 都是一样的,有十几个,每个下面都有一个挑战。。比如说 10 的 LinearLayout,我怎么去定位 10 号 LinearLayout 下面的挑战按钮? 第一次见到这种都是一样的东西,就是 index 不一样。。瞬间懵逼。。也不知道 index 用什么方法定位
你看看这样行不行 xpath:(//LinearLayout)[7]/TextView
#1 楼 @xinufo 只能 xpath 吗?别的类似 ID 这样的定位方法呢?
先找出所有的 LinearLayout,然后再找第 10 个的挑战
#3 楼 @nancy2896 遍历?用 for 循环遍历啊。。想过。。感觉好麻烦~~除了 for。有什么更加方便的遍历方法吗?
#4 楼 @lucifer findelementsby。。。
#5 楼 @nancy2896 。。。。。。by 用什么方法遍历?
1
#2 楼 @lucifer 别的方法估计只能用 findElements 获取到一个 List,然后再在 List 中去取了 例如
List<WebElement> ls = driver.findElements(By.className("your classname")); WebElement e = ls.get(10);
#8 楼 @xinufo 有个高手告诉了我一个方法,也用上了 new UiSelector().index(10) 定位为 10 的 index 下面是我的用法 dr.find_element_by_android_uiautomator("new UiSelector().index(10)").find_element_by_id("btn_fight").click() 亲测好用,那人说这个是 uiautomator 里面的方法。。。appium 没有,要用 android_uiautomator 来调用~~