Проведите пальцем вправо влево - PullRequest
1 голос
/ 29 мая 2019

Как сделать вправо и влево в последней версии appium, потому что у нас нет метода swipe (driver.swipe) в новой версии appium

public DailyPicksPage swipeDailyPicksCard() throws Exception {
        Dimension size = agent.getMobileDriver().manage().window().getSize();
        System.out.println("Dimensions of the screen" + size);
        int startX = (int) (size.width * 0.80);
        int endX = (int) (size.width * 0.20);
        int width = size.width;
        int duration = 2000;
        int height = size.height;
        int pressHeight = (int) (height * 0.80);
        new TouchAction(agent.getMobileDriver()).press(PointOption.point(startX, pressHeight)).waitAction(WaitOptions.waitOptions(Duration.ofMillis(duration))).moveTo(PointOption.point(endX, pressHeight)).release().perform();
        return new DailyPicksPage(params, agent);
    }

1 Ответ

1 голос
/ 29 мая 2019

Вы можете создать собственный метод смахивания, используя io.appium.java_client.TouchAction

public void horizontalSwipeByPercentage(double startPercentage, double endPercentage, double anchorPercentage, AppiumDriver<MobileElement> driver) {
    Dimension size = driver.manage().window().getSize();
    int anchor = (int) (size.height * anchorPercentage);
    int startPoint = (int) (size.width * startPercentage);
    int endPoint = (int) (size.width * endPercentage);

    new TouchAction(driver)
            .press(PointOption.point(startPoint, anchor))
            .waitAction(WaitOptions.waitOptions(ofSeconds(1)))
            .moveTo(PointOption.point(endPoint, anchor))
            .release().perform();
}
...