gpt4 book ai didi

iOS UI 自动化 : Accessing custom subviews added on a UIScrollView in automation script

转载 作者:可可西里 更新时间:2023-11-01 03:55:27 25 4
gpt4 key购买 nike

我是 iOS UIAutomation 的新手,这是我面临的问题

我有一个如下所示的 View 层次结构,我想访问自动化脚本中的 CustomView2 元素

UIWindow > UIScrollView > CustomView1(多个)> CustomView2(多个)

ScrollView 具有 CustomView1 类型的 subview ,而 CustomView1 又具有 CustomView2 类型的 subview 。

我已将可访问性信息分配给层次结构中的所有 View ,但我无法访问我的自动化脚本中的 CustomView2 元素。

当我在 UIScrollView 上执行 logElementTree() 时,我得到的只是 CustomView2 的实例,CustomView2 甚至不在 UIWindow 的树结构中。

请指出是否有任何遗漏或问题。

这是我使用的代码

var mainWindow = application.mainWindow();
var scrollView = mainWindow.scrollViews()[0];
var custom1 = scrollView.elements().withName("CustomView1");

for(var index=0; index<custom1.length; index++){
currentIndustry.tap();
custom1[index].logElementTree();
var custom2 = custom1[index].elements().withName("CustomView2");
UIALogger.logPass("Custom2 Length : " + custom2.length);
}

打印的树 custom1[索引].logElementTree();不包含 CustomView2 的实例

附言我需要访问 CustomView1 和 CustomView2 元素

最佳答案

如果您还没有找到答案,这可能对您有帮助:

UIAutomation Nested Accessibilty Elements Disappear from Hierarchy

在您的 CustomView1 类中实现以下内容:

- (BOOL)isAccessibilityElement
{
return NO;
}

这将使您的 CustomView2 元素在您使用 logElementTree() 时可见。

如果 CustomView2 包含可访问元素并且基本上也是一个容器 View ,那么也在该类中实现上述内容,并且它的 subview 将变得可访问。

关于iOS UI 自动化 : Accessing custom subviews added on a UIScrollView in automation script,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7834119/

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