Je cherche un moyen d'ajouter un EventListener qui s'enlèvera automatiquement après la première fois qu'il se déclenchera, mais je n'arrive pas à trouver une façon de le faire comme je le souhaite .AS3 - Ecouteur d'événement qui ne se déclenche qu'une seule fois
Je trouve cette fonction (here):
public class EventUtil
{
public static function addOnceEventListener(dispatcher:IEventDispatcher,eventType:String,listener:Function):void
{
var f:Function = function(e:Event):void
{
dispatcher.removeEventListener(eventType,f);
listener(e);
}
dispatcher.addEventListener(eventType,f);
}
}
Mais au lieu d'avoir à écrire:
EventUtil.addOnceEventListener(dispatcher, eventType, listener);
Je voudrais l'utiliser de la manière habituelle:
dispatcher.addOnceEventListener(eventType, listener);
Est-ce que quelqu'un a une idée de comment cela pourrait être fait ne?
Toute aide serait grandement appréciée.
(je sais que Robert Penner de Signals peut le faire, mais je ne peux pas les utiliser car cela signifierait beaucoup de réécriture du code que je ne peux pas se permettre pour mon projet en cours)
Essayez d'utiliser le (https://github.com/robertpenner/as3-signals/wiki) [Bibliothèque de signaux]. –