2013-03-12 2 views
0

나는 iOS 자동화를 위해 UIAElementArray를 다루고 있으며, UIAElementArray 내에서 더 쉬운 검색 방법을 찾고 있습니다. 여기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을 변환하는 시도? 또는 UIAElementArray에서 더 쉽게 검색 할 수있는 아이디어가 있습니까?

감사합니다.

답변

0

술어를 사용하여 검색 할 수 있습니다. 나는 당신이 성취하고자하는 것이 무엇인지 확실하지 않지만, 텍스트 레이블이 존재한다면 당신이 뭔가를하고 싶어하는 것처럼 보입니다. 그래서처럼 구현하는 것이 : 당신은, 우리는이 경우 name()하고있는 UIAElement의 모든 속성에 작동 조건을 구축 할 수 있습니다

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

.

여기에 술어 문자열 형식의 기본에 대한 Apple's docs이 있습니다.

+0

고마워요 조나단, 그래, 텍스트가 있는지 확인하고 있지만 나중에 해당 textArray 해당 텍스트의 인덱스가 필요합니다 및 따라서 indexOf() 메서드를 사용하려고했습니다. withPredicate()를 사용해 볼 수도 있지만 toArray()가 자바 스크립트 배열을 반환하지 않는 이유가 궁금합니다. –