0

我在 appium javascript 中滚动时遇到问题。我想移动到移动屏幕上当前窗口中不可见的确切文本和 id。我正在使用 wd npm

我在 appium javascript 中滚动时遇到问题。我正在使用 wd npm。我想移动到移动屏幕上当前窗口中不可见的确切文本和 ID。它存在于屏幕中央。当我使用 driver.scrolltoExact('text') 时,此方法未实现, driver.scroll(10,200) 也不起作用。为此,我在一段时间内在javascript中使用了now touch动作(true),现在的问题是,它不滚动固定轴,它有时滚动到最后,有时不滚动,有时根据轴滚动。我想滚动 y 的固定轴。

  while (true) {
          await delay(1000);
          i = i + 1;
          try {
            let classname = await driver.elementsByClassName(
              "android.view.View"
            );
            for (var i = 0; i < classname.length; i++) {
              let a = await classname[i].text();
              array.push(a);
              if (a == "Share") {
                await delay(3000);
                await classname[i].click();
                break;
              }
            }
          } catch (error) {
            await new wd.TouchAction(driver)
              .press({ x: 65, y: 780 })
              .moveTo({ x: 65, y: 155 })
              .release()
              .perform();
            if (i > 5) {
              break;
            }
          }
        }
4

1 回答 1

0

从您的示例来看,您似乎正在尝试在 Android 平台上进行操作。你可以试试这个

driver.findElements(MobileBy.AndroidUIAutomator("new UiScrollable(new UiSelector().scrollable(true).instance(0)).scrollIntoView(new UiSelector().textContains(\"" + textToSearch + "\").instance( 0))")).size() > 0

// 中断/返回

于 2019-05-01T13:08:56.913 回答