سؤال

لدي تطبيق Flex وأريد إضافة مكون مخصص جديد مع برنامج نصي الإجراء في وقت التشغيل. هذا يعمل بشكل جيد. لقد قمت بإنشاء مكون مخصص الخاص بي وأضاف التعليمات البرمجية التالية:

var freeView:FreeView=new FreeView();
freeView.setStyle("showEffect",this.fadeIn);
freeView.setStyle("hideEffect",this.fadeOut);
freeView.visible=false;
this.addChild(freeView);
freeView.visible=true;

لكن مشكلتي هي التلاشي في Epseo لا يعمل. أعلم أنني أعلنت التأثير بشكل صحيح لأنه إذا كنت تستخدمه في مكون آخر (مثل لوحة) يعمل بشكل جيد. هل يمكن لأي شخص مساعدتي في هذه المشكلة؟ مع أطيب التحيات!

هل كانت مفيدة؟

المحلول 2

أخيرا أنا حل المشكلة بطريقة مختلفة. بدلا من ذلك، قم بإضافة المكون في وقت التشغيل، لقد أضفت المكون إلى التطبيق مع مجموعة خاصية مرئية إلى False وأنا أغيرها إلى True عندما أحتاج.

نصائح أخرى

تأكد من استدعاء أي وظائف Super-Super-Super-Superverting في فرعية FreeView.

خاصة المحدثة والزبديات:

override protected function updateDisplayList(w:Number, h:Number)
{
    super.updateDisplayList(w, h);

    // Your code here.
}


override protected function commitProperties()
{
    super.commitProperties();

    // Your code here.
}

هل تتجاوز واحدة من فئات الحاويات رفيعة المستوى (مثل قماش أو Hbox) أو Uicomponent؟

يمكنك أن تفعل ذلك في الاتجاه الآخر عن طريق تحديد الهدف الهدف لعنصرك الجديد

<mx:Fade id="showFlag" alphaFrom="0" alphaTo="1" duration="5000"/>

var flag:Image = new Image;
flag.source = flagSource;

something.addElement(flag);

showFlag.target = flag;
showFlag.play();
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top