4

当我使用 for 循环时,它调用 UIATarget.localTarget().frontMostApp().mainWindow().elements(); 要在主视图上搜索特定元素,它的运行速度非常慢。有没有人遇到过这个问题?如果是这样,任何建议

4

2 回答 2

8

我遇到了同样的问题,经过一些研究,我发现 UI 自动化会等待调用myElement.elements()[i],以防元素尚不可访问。所以如果你想减少这个延迟,你应该在堆栈上推送一个新的超时值,然后像这样弹出它:

UIATarget.localTarget().pushTimeout(0);
...
UIATarget.localTarget().popTimeout();

或者简单地说:

UIATarget.localTarget().setTimeout(0);

来源:http: //developer.apple.com/library/ios/#documentation/ToolsLanguages/Reference/UIATargetClassReference/UIATargetClass/UIATargetClass.html

于 2011-04-27T14:48:29.220 回答
1

我不久前开始研究这个仪器,我认为你可以尝试使用它:

button = UAITarget.localTarget().frontMostApplication().mainWindow().tableView()[0].scrollToElementWithPredicate("name beginswith "Your Specific Element Name");

其中 tableView 是您的主窗口视图列表的层次结构,其中将包含您的按钮以及您为其指定的特定名称。

如果您找到了自己的方式,请也发布您的答案。

于 2011-01-25T10:17:20.087 回答