我在ListView
内嵌套SwipeRefreshLayout
。
我想从ListView
中的任何位置向下滑动到布局底部的元素,以便发生滑动事件,并观察到小刷新图标。
我试过这个
new TouchAction(mUser.mDriver)
.longPress(listView)
.moveTo(bottomElement)
.release()
.perform();
和这个
new TouchAction(mUser.mDriver)
.longPress(swipeView)
.moveTo(bottomElement)
.release()
.perform();
似乎都不起作用。
如何使用Java客户端使用appium滑动列表视图?
答案 0 :(得分:0)
这似乎有效
WebElement swipeView = myDriver.findElementById(myId);
new TouchAction(mUser.mDriver)
.press(getXMiddle(swipeView), getYUp(swipeView))
.moveTo(getXMiddle(swipeView), getYDown(swipeView))
.release()
.perform();
和辅助方法
// x locations
public int getXLeft(WebElement el)
{
return el.getLocation().getX();
}
public int getXRight(WebElement el)
{
return getXLeft(el) + el.getSize().getWidth();
}
public int getXMiddle(WebElement el)
{
return (getXRight(el) + getXLeft(el)) / 2;
}
// y locations
public int getYUp(WebElement el)
{
return el.getLocation().getY();
}
public int getYDown(WebElement el)
{
return getYUp(el) + el.getSize().getHeight();
}
public int getYMiddle(WebElement el)
{
return (getYUp(el) + getYDown(el)) / 2;
}