as3 überprüfen, wenn das Kind existiert - removeChild();
Den code unten erzeugt einen MovieClip namens "Kreis" und überprüft, ob es vorhanden ist und löscht es per removeChild(); entfernt den Kreis, aber der [object MovieClip] ist immer noch da.
Wie kann ich überprüfen, ob ein Kind "auf der Bühne" entfernt oder mit removeChild?
import flash.display.MovieClip;
import flash.events.MouseEvent;
var circle:MovieClip = new MovieClip();
circle.graphics.beginFill(0xFF794B);
circle.graphics.drawCircle(50, 50, 30);
circle.graphics.endFill();
addChild(circle);
circle.addEventListener(MouseEvent.CLICK, test);
function test(event:MouseEvent)
{
trace(circle);
if(circle)
{
trace("Called if Circle");
removeChild(circle);
}
trace(circle);
}
um zu überprüfen, ob display-Objekt ist in der display-Liste enthält(). help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/... . Komplett, entfernen Sie den Gegenstand auf null. Kreis = null;
InformationsquelleAutor Papa De Beau | 2013-05-15
Du musst angemeldet sein, um einen Kommentar abzugeben.
überprüfen Sie die
circle.stage
Eigenschaft:Sie entfernen Sie einfach circle aus der Anzeigeliste zu löschen Verweis auf diese sollten Sie manuell setzen Sie Kreis = null, nach, dass garbage collector entfernen Sie den Kreis aus dem Speicher.
oder besser noch, verwenden Sie
parent
statt von der Bühne. So auch wenn es die Eltern nicht auf der Bühne, es wird noch entfernt.es ist ein wenig anders, überprüfen Sie den Stadium und Eltern, wenn Sie brauchen, um zu überprüfen, ob ein Kind innerhalb der Bühne oder nicht überprüfen Sie den Stadium, wenn Sie brauchen nur zu entfernen, Kind von den Eltern,egal, ist das Kind auf der Bühne oder nicht, überprüfen Sie nur Eltern.
InformationsquelleAutor fsbmain
Werden Sie wahrscheinlich wollen, verwenden Sie die
contains
Funktion eines DisplayObject.InformationsquelleAutor Michael