2009-07-02 6 views
0

Hallo, wenn ich eine neue Komponente Actionscript hinzufügen, indem ich es will glatt verblasst in, zum Beispiel dieser Komponenteverblasst in der zugesetzten Komponente mit Action

var df : DateField = new DateField(); 
    df.text = DateField.dateToString(new Date(),stringFormat); 
    df.formatString = stringFormat; 

ich versuchte, diesen

var fade : Fade = new Fade(); 
    df.setStyle("showEffect", fade); 

aber die funktioniert nicht.

irgendwelche Ideen? =)

Vielen Dank im Voraus

Sebastian

Antwort

3

Die showeffect nur dann ausgelöst wird, wenn Sie die .visible Eigenschaft der Komponente ändern - Sie müssen diese irgendwo lösen die awesomeness des Fades zu erleben.

ich dies 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> 
1

Es sollte darauf hingewiesen werden, dass Adobe Tweening-Bibliotheken und die Art sind sehr langsam. Ich würde vorschlagen, GTWeen (noch in der Beta, aber ich hatte keine Probleme), TweenLite/Max (möglicherweise einige Lizenzprobleme), oder Tweener (Einfach zu bedienen, aber viel langsamer als die anderen beiden), setzen Sie den Alpha auf 0 und dann in 1. Einblenden. Es ist nicht so einfach, aber diese Bibliotheken bieten eine viel bessere Leistung.