Frage

Ich lade einige SWF -Dateien auf meiner Bühne auf 0. Sie sind die Seiten meiner Website.

Um von Seite zu Seite zu wechseln, verwende ich RemoveChildat (0) und dann addChildat ("page_title", 0).

Das Problem ist, dass Removechild die Funktionen nicht aus der ersten SWF -Datei geladen (bevor sie entladen) geladen wurde.

Wie kann ich dann aufhören?

Muss ich andere Möglichkeiten zum Removechild verwenden?

Danke!

War es hilfreich?

Lösung

Es klingt für mich so, als würden Sie sie nicht wirklich entfernen. Das Wichtigste zuerst ist es nur eine visuelle/interaktive Veränderung, etwas aus der Anzeigeliste zu entfernen. Es läuft immer noch, bis Sie Referenzen darauf entfernen, Ereignishörer oder W/E sind, und dann müssen Sie es auf Null setzen, damit die Müllsammlung es im nächsten Zyklus greift.

Wenn Sie Flash Player 10 verwenden, ist Spender richtig, dass UnloadandStop für Sie funktioniert, da er erst kürzlich erstellt hat, um Ihr Problem zu beheben.

Ich dachte nur, ich sollte erklären, was los ist, weil die Leute nicht nur über die Lösung wissen sollten, sondern warum Dinge passieren.

Ein weiterer Vorschlag, ich würde diese Filme nicht auf die Bühne laden, ich würde einen Container erstellen Sprite/MovieClip Um sie zu halten, auch wenn Sie später andere Dinge hinzufügen, sind sie getrennt, sauber und leicht zugänglich über ihre Eltern (imageContainer_mc zum Beispiel).

Andere Tipps

Vorausgesetzt, Sie laden mit einem Lader Sie können die Entlade -Stop -Methode verwenden.

Weitere Informationen hier:

http://www.gskinner.com/blog/archives/2008/07/additional_info.html

Alternativ können Sie den Submovie in eine andere Anwendungsdomäne laden, um den geladenen Code aus Ihrer Haupt -App zu isolieren. Schauen Sie sich das an die flash.system.ApplicationDomain Klasse (es ist ein Parameter für die Loader.load() Methode).

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top