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);
}