通过Actionscript 3语言添加动画cc的addchild

时间:2016-08-24 14:47:14

标签: actionscript-3 transition effect tween addchild

如何使用" addchild(第2页)"动画显示与补间!

这是我的简单类动作脚本,当使用addChild()时,MovieClip没有播放动画,你有什么建议吗?

my 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效果和另一个...

2 个答案:

答案 0 :(得分:2)

你自己得到了正确的答案。为了在更安全的方面犯错,您应该等待在执行转换或从显示列表中删除对象之前接收事件。

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

答案 1 :(得分:1)

我们尝试得到它。  在我们的课程中添加此代码。

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