1

我是 AS3 的新手。我非常想知道,是否有办法从主时间线获取信息,如果它是平缓的还是停止的(没有变量)。到目前为止,我一直在通过网络、教程等进行搜索,但找不到答案。这是我的“伪代码”

if(maintimeline == stopped){
    run some function();
}

or...

if(maintimeline == playing){
    run some function();
}

问题是获得该播放或停止的财产。我在任何地方都找不到它。因此,如果有人可以帮助我解决这个问题,我将非常高兴。先感谢您!

4

1 回答 1

1

问题一:

从 Flash 11 开始,您可以在 MovieClip 上使用 isPlaying 属性(并且您的主时间线是一个 MovieClip),请查看文档:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/display/MovieClip。 html#isPlaying

问题2:

// Recursivly play or stop (apply it to stage or a random movieclip)
public function playOrStop(target : DisplayObjectContainer, doPlay : Boolean) : void
{
    for(var i : uint = 0; i < target.numChildren; ++i)
    {
        var currentDo : DisplayObject = target.getChildAt( i );

        // If current clip is a Movieclip, apply play or stop
        if( currentDo is MovieClip )
            doPlay ? MovieClip( currentDo ).play() : MovieClip( currentDo ).stop();

        // If current can contains sub clip, then check inside
        if( currentDo is DisplayObjectContainer )
            playOrStop( currentDo as DisplayObjectContainer, doPlay);
    }
}
于 2013-11-05T08:24:13.150 回答