加载内容时,我的根 TableView 上有一个事件指示器。我正在尝试测试指示器是否存在,但似乎无法获取 UIAActivityIndicator,也无法在应用程序元素树层次结构中的任何位置找到它。该指示器是根 TableView 的 subview ,因此我希望它被视为该元素树的一部分,但我在任何地方都看不到它(除了实际在屏幕上)。
从 javascript 获取事件指示器还需要其他魔法吗?
埃德
最佳答案
这是我为等待 iOS 中的页面加载而构建的函数。您可以在函数代码执行之前传递一个可选的 preDelay,除了等待 activityIndicator 对象变为 null 30 秒(每半秒尝试一次,60 次)。当我点击对象时,我扩展了 UIAutomation 工具以包含此命令。
this.wait_for_page_load = function(preDelay) {
if (!preDelay) {
target.delay(0);
}
else {
target.delay(preDelay);
}
var done = false;
var counter = 0;
while ((!done) && (counter < 60)) {
var progressIndicator = UIATarget.localTarget().frontMostApp().windows()[0].activityIndicators()[0];
if (progressIndicator != "[object UIAElementNil]") {
target.delay(0.5);
counter++;
}
else {
done = true;
}
}
target.delay(0.5);
}
关于iphone - iOS UIAutomation UIAActivityIndicator,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6755477/