我正在尝试删除一个向左滑动的元素。此选项在我的应用程序中以两种方式存在。
- 向左短扫,出现删除按钮,然后您可以按下它。这里没问题。
- 向左长滑,元素将被删除,无需再次询问。
第二个选项我无法使用 XCUIElements 函数重现它。
我发现的唯一功能是 element.swipeLeft() 但没有找到如何向左长滑动。
我正在尝试删除一个向左滑动的元素。此选项在我的应用程序中以两种方式存在。
第二个选项我无法使用 XCUIElements 函数重现它。
我发现的唯一功能是 element.swipeLeft() 但没有找到如何向左长滑动。
您可以使用press(forDuration:thenDragTo:)
从单元格的一侧拖动到另一侧。
let app = XCUIApplication()
let cell = app.cells.element(boundBy: 0) // first cell on the page
let rightOffset = CGVector(dx: 0.95, dy: 0.5)
let leftOffset = CGVector(dx: 0.05, dy: 0.5)
let cellFarRightCoordinate = cell.coordinate(withNormalizedOffset: rightOffset)
let cellFarLeftCoordinate = cell.coordinate(withNormalizedOffset: leftOffset)
// drag from right to left to delete
cellFarRightCoordinate.press(forDuration: 0.1, thenDragTo: cellFarLeftCoordinate)
请注意,在从元素创建坐标时,您会给出一个CGVector
标准化为元素大小的 a(其中1.0
是元素的全宽/高度),但是如果您从一个坐标创建坐标,则必须给出一个CGVector
绝对值价值观。