Actionscript 3 如何实现柔体淡入效果显示时间和隐藏时间是不同的,但是连续的
我试图在flex中实现淡入淡出效果。我实现了一个淡入淡出的效果,这样每10秒我就实现一次可见性。所以它的alpha从0到1和1到0需要10秒。我想要达到的是,我想让Actionscript 3 如何实现柔体淡入效果显示时间和隐藏时间是不同的,但是连续的,actionscript-3,apache-flex,flex4,flex4.5,Actionscript 3,Apache Flex,Flex4,Flex4.5,我试图在flex中实现淡入淡出效果。我实现了一个淡入淡出的效果,这样每10秒我就实现一次可见性。所以它的alpha从0到1和1到0需要10秒。我想要达到的是,我想让showfade持续10秒,让hidefade持续5秒。我怎样才能做到这一点 我的淡入淡出效果: <s:Fade id="showFade" alphaFrom="0" alphaTo="1" duration="10000" target="{rssTextRichText}"/> <s:Fade id="hid
showfade
持续10秒,让hidefade
持续5秒。我怎样才能做到这一点
我的淡入淡出效果:
<s:Fade id="showFade" alphaFrom="0" alphaTo="1" duration="10000" target="{rssTextRichText}"/>
<s:Fade id="hideFade" alphaFrom="1" alphaTo="0" duration="10000" target="{rssTextRichText}"/>
正如我说的,我想让showFade持续10秒,hideFade持续5秒。隐藏后,我希望showFade立即启动,而不是等待5秒钟
谢谢您的帮助。如果我正确理解您的问题,请首先将您的隐藏持续时间设置为5000(5秒)
我的解决方案如下:(另外,应在所需的应用程序位置提供第一个触发器)
受保护函数showFade_effectStartHandler(事件:EffectEvent):无效
{
setRSSLabel();
//testArea.text+=“显示淡入淡出效果开始\n”;
}
受保护函数hideFade_effectStartHandler(事件:EffectEvent):无效
{
//testArea.text+=“隐藏效果开始\n”;
}
受保护函数showFade\u effectEndHandler(事件:EffectEvent):无效
{
//testArea.text+=“显示淡入淡出效果结束\n”;
rssTextRichText.visible=!rssTextRichText.visible;
}
受保护函数hideFade_effectEndHandler(事件:EffectEvent):无效
{
//testArea.text+=“隐藏效果结束\n”;
rssTextRichText.visible=!rssTextRichText.visible;
}
谢谢您的回答。句柄效果是如何开始调用的,我在哪里绑定它?哦,是的,在if语句中绑定它。target是否返回rssTextRichText?啊,对了,那么在handleEffectStart中,e.target应该是“==rssTextRichText”
<s:RichText id="rssTextRichText" x="{(mainContainer.width/1920)*60}" y="{(mainContainer.height/1200)*90}"
fontWeight="bold" fontSize="15" color="0x787878"
width="{(mainContainer.width/1920)*435}" height="{(mainContainer.height/1200)*240}" verticalAlign="top" visible="false" showEffect="{showFade}" hideEffect="{hideFade}">
</s:RichText>
var rssInterval:uint = setInterval(rssChanged, 10000);
public function rssChanged():void{
rssTextRichText.visible = !rssTextRichText.visible;
setRSSLabel();
rssTextRichText.visible = !rssTextRichText.visible;
}
<s:Fade id="hideFade" alphaFrom="1" alphaTo="0" duration="5000" target="rssTextRichText}"/>
function foo_handleEffectStart(e:EffectEvent):void {
if(e.target == "showFade") {
hideFade.stop();
showFade.start(); // dunno if this is necessary or if the event starts anyway.
}
}
<s:Fade id="showFade" alphaFrom="0.5" alphaTo="1" duration="20000" target="{rssTextRichText}"
effectEnd="showFade_effectEndHandler(event);" effectStart="showFade_effectStartHandler(event);"/>
<s:Fade id="hideFade" alphaFrom="1" alphaTo="0" duration="1000" target="{rssTextRichText}"
effectEnd="hideFade_effectEndHandler(event);" effectStart="hideFade_effectStartHandler(event);"/>
protected function showFade_effectStartHandler(event:EffectEvent):void
{
setRSSLabel();
//testArea.text+="showFade effect start\n";
}
protected function hideFade_effectStartHandler(event:EffectEvent):void
{
//testArea.text+="hideFade effect start\n";
}
protected function showFade_effectEndHandler(event:EffectEvent):void
{
//testArea.text+="showFade effect end\n";
rssTextRichText.visible = !rssTextRichText.visible;
}
protected function hideFade_effectEndHandler(event:EffectEvent):void
{
//testArea.text+="hideFade effect end\n";
rssTextRichText.visible = !rssTextRichText.visible;
}