verblassen in der zugesetzten Komponente mit Action
-
21-08-2019 - |
Frage
, wenn ich hinzufügen, eine neue Komponente mit Actionscript Ich will es glatt verblasst in, zum Beispiel dieser Komponente
var df : DateField = new DateField();
df.text = DateField.dateToString(new Date(),stringFormat);
df.formatString = stringFormat;
Ich habe versucht, diese
var fade : Fade = new Fade();
df.setStyle("showEffect", fade);
, aber das hat nicht funktioniert.
irgendwelche Ideen? =)
Vielen Dank im Voraus
Sebastian
Lösung
Die showeffect wird nur dann ausgelöst, wenn Sie die .visible Eigenschaft der Komponente zu ändern -. Sie müssen diese irgendwo lösen die awesomeness des Fades zu erleben
ich diese warf zusammen ganz schnell, damit Sie sehen, was ich meine (auch bemerke ich eine Zeichenfolge verwendet, um die Fade eher als ein Objekt zu definieren - es scheint immer leichter auf diese Weise ... hoffe, es hilft)
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="absolute"
creationComplete="init()">
<mx:Script>
<![CDATA[
import mx.events.FlexEvent;
import mx.controls.DateField;
private function init():void{
var df:DateField = new DateField();
df.visible = false;
df.setStyle("showEffect","Fade");
this.addChild(df);
df.addEventListener(FlexEvent.CREATION_COMPLETE,triggerFade);
}
private function triggerFade(event:FlexEvent):void{
var df:DateField = event.currentTarget as DateField;
df.visible = true;
}
]]>
</mx:Script>
</mx:Application>
Andere Tipps
Es sei darauf hingewiesen, dass Adobes tweening Bibliotheken und die Art sind sehr langsam. Ich würde GTween vorschlagen (noch in der Betaphase, aber ich habe keine Probleme hatte), TweenLite / Max (kann einige Lizenzprobleme haben) oder Tweener (Einfach zu bedienen, aber viel langsamer als die anderen beiden), die Alpha auf 0 setzen und dann Verblassen in 1. Es ist nicht so einfach, aber diese Bibliotheken bieten eine deutlich bessere Leistung.