搜索UIAElementArray中的文本/元素

时间:2013-03-12 15:47:15

标签: objective-c arrays ios6 ios-ui-automation

我正在处理UIAElementArray的ios自动化,并寻找一种更简单的方法来搜索UIAElementArray。

以下是代码:

var textArray = this.myCollectionViews.staticTexts();

textArray.toArray() // Trying to convert UIAElementArray to a javascript array.

logger.logDebug('Array object is' + textArray); // Here the output is [object UIAElementArray]; which I guess should be Array and not UIAElementArray.

if (textArray.indexOf('Hello') > -1) 
{
       // do this
}

我在textArray.indexOf上遇到了崩溃:

TypeError: '[object UIAElementNil]' is not a function (evaluating 'textArray.indexOf('Hello')')

有没有人尝试使用toArray()方法将UIAElementArray转换为javascript数组?或者在UIAElementArray中进行更简单搜索的任何想法?

谢谢!

1 个答案:

答案 0 :(得分:0)

您可以使用谓词进行搜索。我不太确定你想要完成什么,但是如果存在文本标签,看起来你想做点什么。我会像这样实现它:

if (textArray.withPredicate('name contains "Hello"').length > 0)
{
    // do this
}

您可以构建适用于UIAElement的任何属性的谓词,在这种情况下我们正在执行name()

这里是关于谓词字符串格式基础的Apple's docs