我似乎无法创建对scrollView的引用。我正在尝试测试iOS应用程序的登录页面。
xib有一个UIView,它包含一个UIScrollView。
我正在尝试使用此javascript抓取scrollView:
target = UIATarget.localTarget();
application = target.frontMostApp();
window = application.mainWindow();
scrollView = window.scrollViews()[0];
打印对象(使用UIALogger.logPass)会产生:
[object UIATarget]
[object UIAApplication]
[object UIAWindow]
[object UIAElement]
window.elements()生成一个只包含一个元素的数组。我在viewController的viewDidLoad中将scrollViews的isAccessibilityElement设置为YES。
我在这里做错了什么?
[编辑]
application.logElementTree()产生:
2) UIAApplication [name:App value:(null) rect:{{x:0, y:20}, {width:768, height:1004}}]
3) UIAWindow [name:(null) value:(null) rect:{{x:0, y:0}, {width:768, height:1024}}]
4) UIAElement [name:(null) value:(null) rect:{{x:0, y:20}, {width:768, height:1004}}]
3) UIAWindow [name:(null) value:(null) rect:{{x:0, y:0}, {width:768, height:1024}}]
4) UIAKeyboard [name:(null) value:(null) rect:{{x:0, y:760}, {width:768, height:264}}]
这看起来不像我的xib中的内容。我期待UIAElement(根视图)持有UIAScrollView ...运行应用程序一切正常。
答案 0 :(得分:0)
试图解决这个问题我绊倒了其他一些问题,这个问题得到了解答here。使用该答案我发现将UIScrollView上的isAccessibilityElement设置为YES会以某种方式切断elementTree。
答案是:对于UIScrollView,将isAccessibilityElement设置为NO。