Вопрос

Привет, когда я добавляю новый компонент с помощью Actionscript, я хочу, чтобы он плавно появлялся, например этот компонент

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

Я попробовал это

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

но это не сработало.

Любые идеи?"="

заранее спасибо

Себастьян

Это было полезно?

Решение

ShowEffect срабатывает только тогда, когда вы меняете свойство .visible компонента — вам нужно где-то активировать его, чтобы ощутить великолепие затухания.

Я очень быстро собрал это, чтобы вы поняли, что я имею в виду (также обратите внимание, что я использовал строку для определения затухания, а не объект — так всегда кажется проще... надеюсь, это поможет!)

<?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>

Другие советы

Следует отметить, что библиотеки анимации Adobe и тому подобное работают очень медленно.Я бы предложил GTween (все еще в бета-версии, но у меня не было никаких проблем), TweenLite/Max (могут возникнуть проблемы с лицензированием) или Tweener (простой в использовании, но гораздо медленнее, чем два других), установив альфу на 0. а затем постепенно исчезает до 1.Это не так просто, но эти библиотеки обеспечивают гораздо лучшую производительность.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top