2010-08-10 5 views
0

TextField와 Sprite가 모두 y = -20;이고 정확한 위치에 있습니다.왜 두 개체를 트위닝 할 때 내가하고있는 트위닝에 차이가 있습니까?

그런 다음이 트윈을합니다.

Tweener.addTween(t, {y: 20, time:0.5, transition:"linear"}); 
Tweener.addTween(noteBar, {y: 20, time:0.5, onComplete:Hold, transition:"linear"}); 

(t는 TextField이고 noteBar 스프라이트하다) I는이 스프라이트 Y = 0 간다이다 할 때

무슨 일; TextField는 y ​​= 20으로 이동합니다. 나는 0에서 텍스트 필드의 y를 20

에서 스프라이트 y를이하지만 내가 다시 원래의 위치로 그들을 얻기 위해이 작업을 수행해야하는 경우

이 제대로 작동합니다.

Tweener.addTween(t, {y: -20, time:0.5, transition:"linear"}); 
Tweener.addTween(noteBar, {y: 0, time:0.5, transition:"linear"}); 

스프라이트를 -20으로 설정하면 y = -40으로 끝나게됩니다.

왜 이런 식으로 행동합니까?

+0

이러한 요소는 수동으로 스테이지에 배치되거나 ActionScript로 생성됩니까? 그들은 다른 부모 객체에 포함되어 있습니까? – Aaron

답변

1

"둘 다 y = -20"이라고 말하면 플래시의 정보 팔레트를 사용하여 이것을 결정하고 있습니까?

정보 팔레트에는 x, y : 등록 및 변환을 표시하는 두 가지 모드가 있으므로 질문합니다. 정보 팔레트의 X 필드 왼쪽에있는 작은 등록 포인트 아이콘을 클릭하면 토글됩니다.

문제는 변환 모드에서 표시되는 x, y가 텍스트 필드의 가운데이지만, 실제로는 텍스트 필드의 x, y가 왼쪽 상단입니다.

즉, 정보 팔레트가 등록 모드 (십자선이있는 아이콘)에 있는지 확인한 다음 텍스트 필드를 -20으로 설정하십시오.

이 정보 팔레트에 어떤 모드 문제가되지 않는 경우 NoteBar 같은 방식으로, 동작 있도록 또 다른 해결책은 스프라이트에 TextField를 포장하는 것입니다. 물론

당신이있는 경우 이 모든 작업을 코드로 수행하고 Flash에 항목을 배치하지 않으면 내 솔루션이 문제가됩니다.

-Gabriel

+0

코드에있는 모든 항목을 만듭니다. 그래서 본문에서 저는 t.y = -20; 그리고 스프라이트에 대해서도 똑같이합니다. –

관련 문제