Ich habe eine Unterklasse von SKSpriteNode namens 'backgroundMusic', die aus einer SKSpriteNode- und einer AVAudioPlayer-Datei besteht. Das Ziel ist, 'backgroundMusic' nach der Instanziierung vollständig zu löschen. Ich versuche zu tun:SKSpriteNode-Variable vollständig löschen
backgroundMusic.removeFromParent()
aber es entfernt nur den SKSpriteNode und nicht den AVAudioPlayer.
Das Hauptproblem ist, dass innerhalb dieser Unterklasse, habe ich eine Reihe von Funktionen in andere Funktionen aufrufen, und wenn ich versuche, die Unterklasse zu leeren, indem Sie:
backgroundMusic = nil
den Prozess alle Funktionen nach wie vor der Berufung ist kommt vor und verursacht Probleme, wenn ich es wieder instanziiere. Was ich glaube, wird funktionieren, wenn ich "backgroundMusic" vollständig lösche, was den Funktionsaufrufprozess stoppt, und es später wieder instanziiere, wenn ich es brauche, sollte es gut ohne Probleme funktionieren. Wie kann ich das machen?
EDIT Ich habe versucht:
self.delete(backgroundMusic)
und die Anwendung abgestürzt. Soll ich das benutzen? Wenn das so ist, wie?
Das ist nicht mein Problem. Ich möchte wissen, wie ich meine Variable 'backgroundMusic' löschen kann, nachdem ich sie instanziiert habe. Die Musik ist in Ordnung. – OriginalAlchemist
Sie müssen mehr backgroundMusic-Code zur Verfügung stellen, Ihre Frage nicht erklären, ob Ihre Musik fortgesetzt wird, nachdem Sie aufhören. –