gpt4 book ai didi

ios - 如何使用 Subliminal 模拟 TableView 或 Collection View 滚动?

转载 作者:可可西里 更新时间:2023-11-01 05:55:20 24 4
gpt4 key购买 nike

我目前正在尝试使用 KIF 和 Subliminal 进行 iOS 集成测试。但我仍然无法弄清楚如何使用这两种框架在 TableView 或 Collection View 上模拟滚动。比如如何滚动到 TableView 或 Collection View 的底部。

编辑 1:

我在这里制作了简单的单一 Collection View 应用 https://github.com/nicnocquee/TestSubliminal

基本上我想测试最后一个单元格的标签。我做不到

SLElement *lastLabel = [SLElement elementWithAccessibilityLabel:@"Label of the last cell"];
[lastLabel scrollToVisible];

因为在 Collection View 滚动到底部之前标签还不存在。

编辑 2:

我把Aaron的回答标记为答案。但 Jeffrey 也有效 :)

最佳答案

您还可以通过拖动 Collection View 直到单元格可见来模拟用户在集合中滚动以查找单元格:

while (!SLWaitUntilTrue([UIAElement(lastLabel) isValidAndVisible], 1.0)) {
[[SLWindow mainWindow] dragWithStartOffset:CGPointMake(0.5, 0.75) endOffset:CGPointMake(0.5, 0.25)];
}

这些偏移转化为沿着 Collection View 的中间直接向上拖动,从 View 下方的 75% 到 View 下方的 25%。 -isValidAndVisible 让您可以检查单元格的可见性,而不必担心它是否存在(而 -isVisible 会在单元格不存在时抛出异常)。我将 -isValidAndVisible 包裹在 SLWaitUntilTrue 中,这样我们就可以让 Collection View 在再次拖动之前完成滚动。

与@AaronGolden 的应用 Hook 解决方案相比,此方法要求您能够识别要滚动到的特定单元格。所以我将这种方法定义为“滚动到一个单元格”,而应用 Hook 让您“滚动到一个位置”。

关于ios - 如何使用 Subliminal 模拟 TableView 或 Collection View 滚动?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18254163/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com