Wie man einen MovieClip entfernen, der sich in AS3?
Was ist das äquivalent zu removeMovieClip()
in AS3?
Anscheinend haben viele die gleiche Frage:
StackOverflow:
- Wie, um vollständig zu entfernen einen movieclip in as3
- Entfernen movie clip as3
- So entfernen Sie childmovieclip und fügen Sie zu neuen übergeordneten movieclip
Andere:
Aber keine der Lösungen zu funktionieren scheint, für mich:
Im arbeiten auf flash CS4 mit AS3:
Ich habe ein sehr einfacher Film mit einer einzigen Taste aufgerufen klicken Sie auf. Nach drücken der Taste, wird eine neue Instanz von Münze erstellt:
this.click.addEventListener(MouseEvent.CLICK,justclick);
function justclick(e:MouseEvent){
var money=new coin
this.addChild(money)
money.x=e.stageX
money.y=e.stageY
}
Es ist vielleicht nicht der beste code, aber es funktioniert gut. Nun, die Münze MovieClip soll eine kleine animation und entfernen sich. In der guten alten AS2-ich würde Hinzugefügt haben:
this.removeMovieClip()
in den letzten frame der animation. Aber diese existiert nicht in AS3.
Ich habe versucht, ohne Erfolg:
this.parent.removeChild(this) //'Cannot access a property or method of nullobject reference'...
this.removeMovieClip() //'removeMovieClip is not a function'
removeMovieClip(this) //'call to possibly undefined method removeMovieClip'
unloadMovie(this)//'call to possibly undefined method removeMovieClip'
Lösungen?
Dank,
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dafür soll man arbeiten; es ist, was ich verwenden. Ein problem, das ich hatte, als ich wechselte zu AS3 ist, dass manchmal es wäre nicht Hinzugefügt werden, wie ein Kind richtig, so möchten Sie vielleicht zu prüfen, die. Sie haben auch zu importieren flash.Anzeige über die Umsetzung dieses auf der Oberseite, wenn Sie nicht bereits:
Sollten Sie auch entfernen Sie den Ereignis-listener auf, bevor Sie es zu entfernen.
import flash.display.MovieClip
funktionieren würde.Wenn die animation zu Ende am Rahmen 20.
Hinweis: mit 19, da der flash-Graf-frames von null(0) wie in der array-index.
Immer darauf, dass diese selbst das entfernen von movieclips bekommen kann Müll gesammelt.
Diese Lösung wischte alle meine Instanzen aus einer geladenen swf-Datei-symbol aus der Bibliothek:
Ich verwenden, in ein extra leeres Schlüsselbild am Ende der MovieClip sollte selbst entfernen:
Festgestellt, dass es die richtige und beste Lösung.