2011-09-22 7 views
0

LSO에서 모두 동일한 사용자 정의 클래스 인 객체 배열을 저장하는 데 문제가 있습니다. 그런 다음 LSO에서 해당 배열을 손실하지 않고 다시로드합니다. 목록에있는 객체의 클래스 유형.AS3 : LSO (로컬 공유 객체)에 사용자 정의 클래스의 배열 저장

맞춤 클래스의 단일 개체를 저장하고 registerClassAlias() 함수를 사용하여 올바른 클래스 형식으로로드하는 방법을 알고 있지만 개체 배열에 적용 할 수 없습니다.

messageList라는 배열을 저장하려고합니다. 각 요소는 gameLevel이라는 속성이있는 사용자 정의 클래스 인 GameMessage입니다. 나는 LSO를로드 한 후 나는

trace("0th message is from level " + GameMessage(messageList[0]).gameLevel); 

처럼 뭔가를 시도하고 그리고이 같은의 예외 얻고있다 : 나는

registerClassAlias("GameMessage", GameMessage); 

를 사용하여 GameMessage 클래스를 등록

TypeError: Error #1034: Type Coercion failed: cannot convert [email protected] to GameMessage.

을 하나의 메시지를 저장하고로드하는 메시지 목록보다는 모든 것이 작동합니다.

이 문제를 해결하는 방법에 대한 도움을 주시면 매우 감사하겠습니다.

+1

이와 같이 사용자 지정 클래스를 수행 할 수 있는지 확실하지 않습니다. 우편 번호 –

답변

1

마찬가지로 The_asMan은 사용자 지정 클래스를 수행 할 수 있다고 생각하지 않지만 AS3의 기본 데이터 형식 만 사용할 수 있다고합니다. 사용자 정의 클래스에서 수행 할 수있는 작업은 클래스의 fromObject (object) 및 toObject() : Object와 같은 도우미 함수를 설정하여 변환하는 데 도움이됩니다.

+0

좋아, 그걸 시도 할게. 감사 – asutherland