2010-09-21 5 views
0

J'ai un problème lors de la prise des applications flash avec plus d'un cadre qui a des symboles placés sur dans ce que je ne peux pas déclarer tous les écouteurs d'événement pour les objets en même temps et j'ai trouvé que même si je les ai tous mis sur la première image, ajoutez les écouteurs d'événement, puis cliquez sur l'image suivante, puis les boutons ne fonctionneront pas sur cette image.En utilisant une classe externe avec plusieurs cadres sur la timeline et plusieurs étages placés boutons

Est-ce que quelqu'un a une idée comment je pourrais résoudre ce problème? Je me suis considéré comme un programmeur AS3 assez compétent jusqu'à ce que je me rende compte que je ne savais pas comment gérer ce genre de choses.

Résolu: J'ai initialisé les clips de ma classe externe, puis j'ai ajoutéChild'd et removeChild'd comme je le voulais à et placé leur x et y sur addChilding. Merci, les gars

Répondre

0

Lorsque vous travaillez avec Flash & un IDE externe tel que FlashBuilder, j'ai tendance à mettre le moins de code possible dans Flash et à gérer la majeure partie de la logique dans FlashBuilder. Puisque vous faites référence à une classe externe, je suppose que vous pouvez avoir une configuration similaire, alors qu'une partie du codage est faite en dehors de l'IDE Flash.

Je ne connais pas votre projet afin qu'il ne soit pas possible ou il peut être un peu tard pour extérioriser tout votre code, mais ce serait ma première option. Je trouve plus facile de suivre les écouteurs d'événements, les fonctions déclenchées, le nombre d'enfants sur scène, qui fait quoi quand etc ...

Une autre façon de voir les choses, peut aussi être d'encapsuler vos méthodes dans

+0

Eh bien mon projet a à peine commencé que j'ai beaucoup d'idées, mais réalisé que j'étais perplexe au premier obstacle que je ne fais pas les choses comme je le fais habituellement. Le problème est que les MovieClips sont déjà sur la scène et ils ne sont pas correctement mais initialisant pensez-vous que je devrais obtenir les emplacements et les placer de façon dynamique dans la classe externe, puis de les supprimer quand je changer cadre? – Harold

+1

Je pense que ce serait plus facile de les manipuler depuis la classe externe. Ils ne dépendraient pas de l'image, mais dépendraient plutôt de l'événement. De plus, je pense qu'il est préférable d'avoir votre logique au même endroit plutôt que de l'avoir à la fois dans la classe externe et dans l'IDE Flash. – PatrickS

0

Bien, la meilleure approche sera de placer tous les symboles sur l'image 1 et d'ajouter un écouteur d'événement sur la première image OU de les ajouter dans le document Vous pouvez placer ces symboles en dehors de la scène qui ne sont pas obligatoires pour être visibles au premier frame et vous pouvez les mettre en scène sur une image spécifique.

auditeurs seront attachés aux symboles si elles sont à la première image, sinon vous devrez les attacher sur ce cadre où ils sont définis et utilisés. Et une fois, les écouteurs sont attachés aux boutons ou à tout objet DisplayObjects alors cela n'a pas d'importance, les changements de cadres ou pas. Il se peut que vos boutons aient été modifiés au cours d'une animation image par image.

Une autre façon de voir les choses pourrait également être d'encapsuler vos méthodes dans vos MovieClips afin qu'elles ne dépendent pas des trames et d'utiliser la répartition des événements pour appeler les méthodes le scénario principal

Questions connexes