J'ai deux classes, VideoPod et RemotePod, RemotePod héritant de VideoPod. Sans montrer tout le code dans ces classes, basicall ici fait partie de VideoPod:Pourquoi mettre ces objets dans le MXML brise cette fonction?
public function showPanel():void {
if (!pnl.visible) {
pnl.visible = true;
pnl.addElement(removeElement(vg));
}
}
.
.
.
<s:Panel id="pnl" width="100%" height="100%" fontWeight="normal" visible="false" />
<s:VGroup id="vg" left="0" resize="onResize()" right="0" top="0" bottom="0">
et est ici une partie de RemotePod:
private function onCreationComplete():void {
m_tmrHeartbeat.addEventListener(TimerEvent.TIMER, checkPulse);
var arrBtns:Array = new Array(4);
for (var i:int = 0; i < arrBtns.length; i++) {
arrBtns[i] = new Button();
arrBtns[i].width = 28;
arrBtns[i].height = 25;
arrBtns[i].top = 10;//-28;
}
arrBtns[0].right = 10;
arrBtns[0].setStyle("icon", Images.PATH + "view-fullscreen-3.png");
arrBtns[0].addEventListener(MouseEvent.CLICK, maximize);
.
.
.
for each (var btn:Button in arrBtns) {
addElement(btn);
}
m_lblSize.right = 154;
m_lblSize.top = 18;//-20;
m_lblSize.text = FULLSCREEN;
addElement(m_lblSize);
où est appelé onCreationComplete() pour l'événement creationComplete dans RemotePod. Il y a quelques minutes, j'ai essayé de déplacer les boutons et l'étiquette dans RemotePod dans le MXML réel, mais cela a cassé la fonction showPanel(). L'erreur qu'il soulevait avait essentiellement le message suivant: "vg n'est pas trouvé dans ce groupe". (VideoPod hérite de s: Group.)
Je ne comprends pas. J'ai également commencé à tester pour voir quelle était la largeur de vg au moment de l'exécution, et il est apparemment resté à 0. Quelle est la caractéristique de langage obscure qui cause cela? Merci!
Je ne pense pas que RemotePod peut * avoir * MXML sauf si vous avez écrit VideoPod en tant que composant de modèle. Donc, il serait important de regarder le code pour les deux pour voir si cela fonctionnerait même. De plus, vous ne devriez pas ajouter d'enfants dans creationComplet, mais dans un override createChildren. –