addchild 用 Actionscript 3 语言制作动画 cc
addchild with animate cc by Actionscript 3 language
如何使用 "addchild(page2)" 动画显示补间!
这是我简单的class actionscript 制作的,MovieClip 在使用addChild() 时没有播放动画,你有什么建议吗?
我的 page1..3 是 MovieClips!
package
{
import flash.display.MovieClip;
import flash.events.MouseEvent;
import flash.events.TouchEvent;
Multitouch.inputMode = MultitouchInputMode.TOUCH_POINT;
public class Main extends MovieClip
{
var page1: Page1;
var page2: Page2;
var page3: Page3;
public function Main()
{
page1 = new Page1;
page2 = new Page2;
page3 = new Page3;
addChild(page1);
//
//
page1.clip2.addEventListener(TouchEvent.TOUCH_BEGIN, onClip2ButtonClick);
page2.clip.addEventListener(TouchEvent.TOUCH_BEGIN, onClipButtonClick);
}
function onClipButtonClick(event: TouchEvent): void
{
addChild(page3);
removeChild(page2);
}
function onClip2ButtonClick(event: TouchEvent): void
{
addChild(page2);
removeChild(page1);
}
}
}
我们可以通过 this 补间和无需编程
通过帧补间动画,我们可以使用多重效果。在此文件中使用淡入淡出效果,但可以使用 3d 效果和其他效果..
我们尝试并得到了它。
通过在我们的 class.
中添加此代码
function onClipButtonClick(event: TouchEvent): void
{
addChild(page1);
var myTM: TransitionManager = new TransitionManager(page1);
myTM.startTransition(
{
type: Fly,
direction: Transition.IN,
duration: 3,
easing: Back.easeOut
})
removeChild(page2);
}
您已经自己找到了正确答案。为了安全起见,您应该等待接收事件,然后再执行转换或从显示列表中删除对象。
private function clip_touchBeginHandler(event:Event):void
{
page1.addEventListener(Event.ADDED_TO_STAGE, page1_addedToStageHandler);
addChild(page1);
}
private function page1_addedToStageHandler(event:Event):void
{
var tm:TransitionManager = new TransitionManager(page1);
var transition:Transition = tm.startTransition(...); // Add your transition parameters here
transition.addEventListener("transitionInDone", transition_transitionInDone);
}
private function transition_transitionInDone(event:Event):void
{
removeChild(page1);
}
如何使用 "addchild(page2)" 动画显示补间!
这是我简单的class actionscript 制作的,MovieClip 在使用addChild() 时没有播放动画,你有什么建议吗?
我的 page1..3 是 MovieClips!
package
{
import flash.display.MovieClip;
import flash.events.MouseEvent;
import flash.events.TouchEvent;
Multitouch.inputMode = MultitouchInputMode.TOUCH_POINT;
public class Main extends MovieClip
{
var page1: Page1;
var page2: Page2;
var page3: Page3;
public function Main()
{
page1 = new Page1;
page2 = new Page2;
page3 = new Page3;
addChild(page1);
//
//
page1.clip2.addEventListener(TouchEvent.TOUCH_BEGIN, onClip2ButtonClick);
page2.clip.addEventListener(TouchEvent.TOUCH_BEGIN, onClipButtonClick);
}
function onClipButtonClick(event: TouchEvent): void
{
addChild(page3);
removeChild(page2);
}
function onClip2ButtonClick(event: TouchEvent): void
{
addChild(page2);
removeChild(page1);
}
}
}
我们可以通过 this 补间和无需编程
通过帧补间动画,我们可以使用多重效果。在此文件中使用淡入淡出效果,但可以使用 3d 效果和其他效果..
我们尝试并得到了它。 通过在我们的 class.
中添加此代码function onClipButtonClick(event: TouchEvent): void
{
addChild(page1);
var myTM: TransitionManager = new TransitionManager(page1);
myTM.startTransition(
{
type: Fly,
direction: Transition.IN,
duration: 3,
easing: Back.easeOut
})
removeChild(page2);
}
您已经自己找到了正确答案。为了安全起见,您应该等待接收事件,然后再执行转换或从显示列表中删除对象。
private function clip_touchBeginHandler(event:Event):void
{
page1.addEventListener(Event.ADDED_TO_STAGE, page1_addedToStageHandler);
addChild(page1);
}
private function page1_addedToStageHandler(event:Event):void
{
var tm:TransitionManager = new TransitionManager(page1);
var transition:Transition = tm.startTransition(...); // Add your transition parameters here
transition.addEventListener("transitionInDone", transition_transitionInDone);
}
private function transition_transitionInDone(event:Event):void
{
removeChild(page1);
}