2010-10-14 4 views
2

J'ai créé un lecteur vidéo flv à l'aide de Flash Builder 4. Ce projet "BasicVideoPlayer" est compilé dans un fichier SWC qui sera éventuellement utilisé pour créer d'autres lecteurs vidéo fonctionnalité. Une des caractéristiques est une vue qui apparaît lorsque la lecture de la vidéo est terminée et qui affiche un bouton "Play Again". Cette vue "Lecture à nouveau" a sa propre classe, "BasicPlayAgain", qui accepte un élément graphique exporté à partir d'un fichier .fla contenant tous les éléments graphiques/IU.Refonte d'un membre d'une classe de bibliothèque en nouveau type dans la classe étendue

Dans mon nouveau projet, "EnhancedVideoPlayer", j'utilise le BasicVideoPlayer SWC comme bibliothèque pour créer un nouveau lecteur vidéo qui ajoutera plus de fonctionnalités à la vue "Play Again"; spécifiquement, il ajoutera plus de boutons à cette vue. EnhancedVideoPlayer utilise une classe par défaut qui étend la classe BasicVideoPlayer.

La classe BasicVideoPlayer a un membre appelé "playAgainScreen" dont le type est BasicPlayAgain. L'EnhancedVideoPlayer doit remplacer le membre playAgain et le redéfinir comme EnhancedPlayAgain afin qu'il puisse contrôler correctement les nouveaux boutons.

Comment puis-je contourner le membre playAgain en tant que nouveau type? Ou est-ce que j'approche cela de la mauvaise direction?

Répondre

1

Une solution possible est que si l'objet EnhancedPlayAgain étend BasicPlayAgain, vous pouvez toujours le stocker dans la variable playAgainScreen, puis le renvoyer vers EnhancedPlayAgain si nécessaire.

EnhancedPlayAgain(playAgainScreen).someAdditionalMethod(); 
Questions connexes