首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >检查Flex 3中是否正在播放任何效果

检查Flex 3中是否正在播放任何效果
EN

Stack Overflow用户
提问于 2011-10-26 17:23:33
回答 1查看 134关注 0票数 0

我在我的Flex应用程序中使用了一些特效...它们都是在mxml标记中声明的…例如:

代码语言:javascript
运行
复制
<mx:Fade id="fadeIn" alphaTo="1" duration="500"/>
<mx:Fade id="fadeOut" alphaTo="0" duration="500"/>
<mx:Move id="moveEffect" duration="500"/>
<mx:Rotate id="rotateEffect" duration="500"/>

通常,当我触发一些特效时,我想禁用所有正在播放的特效的交互,所以我想知道有没有办法在actionscript中检查这些东西

代码语言:javascript
运行
复制
if (!fadeIn.isPlaying && !fadeOut.isPlaying && !moveEffect.isPlaying && !rotateEffect.isPlaying)

非常感谢您的帮助!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-10-26 17:45:06

使用ArrayVector包装您的效果

代码语言:javascript
运行
复制
<fx:Declarations>
    <fx:Vector id="effects" type="mx.effects.Effect">
        <mx:Fade id="fadeIn" alphaTo="1" duration="500"/>
        <mx:Fade id="fadeOut" alphaTo="0" duration="500"/>
        <mx:Move id="moveEffect" duration="500"/>
        <mx:Rotate id="rotateEffect" duration="500"/>
    </fx:Vector>
</fx:Declarations>

private function isEffectPlaying():Boolean
{
    for (var i:int = 0; i < effects.length; i++)
    {
        if (effects[i].isPlaying)
            return true;
    }
    return false;
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7900833

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档