2010-02-09 5 views
0

기본 질문이 있습니다. URLLoader를 사용하여 XML 파일을로드하고 XML 변수에 저장합니다.플렉스, xml 및 E4x

제 질문은 E4x를 사용하여이 xml 데이터를 사용할 수 있습니까?

나는
for each (var grid in xmlData.grid){ 

     output.text=grid.name; 

    } 

일을 시도하지만 변수 '그리드'에 유형 선언이 없다는 것을 말한다. 이것은 컴파일러가 전에로드하고있는 XML의 구조를 직접 알 수있는 방법이 없기 때문에 의미가 있습니다.

하지만 AS3과 flex에 익숙하지 않으므로 E4x를 활용하는 방법이 있는지 궁금합니다.

감사

답변

1

당신은 (이 문제를 해결할 것) 익명을 입력 할 수 있습니다

for each(var grid:* in xmlData.grid) { 

을하지만 그 전에, 여기에이 옵션을 고려 : 당신이 사용하는 경우

// NOTE: This is a for...in, not a for each...in 
for (var grid:XML in xmlData.grid){ 

    // This will give you the node name: 
    // <foo/> returns (basically) "foo" 
    output1.text=grid.name(); 

    // This will give you the node attribute called name: 
    // <foo name="bar"/> returns bar 
    [email protected]; 

    // This will give you the child node named 'name': 
    // <foo><name>Heidi</name></foo> returns <name>Heidi</name>, which, 
    // when translated, should output "Heidi" as text 
    output3.text=grid.name; 
} 

그 중 하나는 현명하게도, 아마도 당신이 찾고있는 것과 더 가깝습니다.

+0

감사합니다. 유일한 문제는 내가 var grid에 유형을 부여하지 않는다고 생각합니다. 재밌지 만, 내가 본 튜토리얼은 하나도주지 않았다. 그러나 무엇이든지 작동합니다! – MAC

+0

@MAC - 저는 많은 온라인 자습서와 플렉스 예제가 테스트되지 않고 작성된 것 같습니다. 그들은 종종 유형 "var"키워드를 제외하고 심지어 자신의 예제에서 함수의 이름과 다른 함수를 호출합니다. 내가 말하고자하는 것은 소금 한 알씩 먹는 것이다. 그 튜토리얼은 기술에 관한 한 올바른 생각을 가지고 있지만 잘못된 구문으로 인해 엉망이 될 수 있습니다. – invertedSpear

관련 문제