flash as3 supprimer tous les enfants
N'est pas là un simple "suppression de tous les enfants" de la fonction de flash? Je ne comprends pas pourquoi ce code ne fonctionne pas. - Je ajouter des enfants par le biais de:
for (var i in project_array[cp].project_type_clips){
container.header.type_loader.addChildAt(project_array[cp].project_type_clips[i],i);
loadCount++
}
et ensuite les supprimer via:
for (var i in project_array[cp].project_type_clips){
container.header.type_loader.removeChildAt(i);
}
Mais j'obtiens une erreur que l'index est fourni en dehors des limites, et encore un clip est toujours sur scène. De même, si j'essaie d'ajouter sans niveaux, comme ceci:
for (var i in project_array[cp].project_type_clips){
container.header.type_loader.addChild(project_array[cp].project_type_clips[i]);
loadCount++
}
et de supprimer
for (var i in project_array[cp].project_type_clips){
container.header.type_loader.removeChild(project_array[cp].project_type_clips[i]);
}
Je reçois la même erreur.
source d'informationauteur mheavers
Vous devez vous connecter pour publier un commentaire.
Encore un autre
RemoveAllChildren
boucle:Lorsque vous supprimez un objet, le childIndex des autres enfants est modifié. Par conséquent, vous ne pouvez pas retirer les enfants à l'aide d'une augmentation de la valeur pour moi, mais faut commencer par numChildren-1 et ensuite diminuer:
devrait fonctionner.
sprite.removeChildren();
supprime tous les enfants comme documenté ici.Voici une belle façon de supprimer tous les enfants avec un effet de fondu. Vous devez inclure TweenLite (ou TweenMax) dans votre classpath.
Il passe par chaque enfant, s'estompe, et à la fin retire de la scène. Il est sûr d'ajouter immédiatement les enfants une fois que cela s'appelle - et nous pouvons parcourir la liste dans l'ordre croissant, car rien n'est enlevé jusqu'à ce que l'effet de fondu est terminée.
Voici le code:
Elle perd tous à la fois. Vous pouvez facilement ajouter
delay: i*.2
à la liste des paramètres àTweenLite.to
si vous le souhaitez de disparaître un par un.