3

目前我访问照片库并通过以下方式拍摄照片:

extension XCUIApplication {

    func pickPhotoFromImagePickerAtIndex(index: UInt) {

        tables.buttons["Moments"].tap()
        collectionViews["PhotosGridView"].tapCellAtIndex(index)
    }
}

使用示例:

photosCollectionView.tapCellAtIndex(0)
app.pickPhotoFromImagePickerAtIndex(5)

这种方法有时会崩溃。这取决于画廊中的照片。

有没有办法以更优雅和有效的方式做到这一点?

4

1 回答 1

3

我假设,您需要点击的索引是从集合视图的底部开始计算的。如果是这样,那么您可以重新设计您的方法:

func pickPhotoFromImagePickerAtInvertedIndex(index: UInt) {

    tables.buttons["Camera Roll"].tap()
    let collectionView = collectionViews["PhotosGridView"]
    collectionView.cells.elementBoundByIndex(collectionView.cells.count - 1 - index).tap()
}
于 2016-07-27T09:01:11.337 回答