2010-09-24 4 views
1

[Flex 4] Comment obtenir la largeur et la hauteur de la peau à partir de son composant hostcomponent? Obtenir les width et height à partir du composant hôte ne vous mènera nulle part car il s'agit généralement d'une métrique calculée.Comment obtenir une largeur et une hauteur de la peau à partir de son composant hostcomponent?

+0

Pouvez-vous fournir plus de contexte? Vous essayez d'accéder à la largeur et la hauteur à partir du code de l'habillage via hostComponent, ou en essayant d'obtenir la largeur et la hauteur de l'habillage depuis le composant? –

+0

J'ai: LoginSkin.mxml <- fichier de la peau LoginView.as <- classe qui étend SkinnableComponent formulaire LoginView Je veux savoir la largeur de LoginSkin LoginView contient le setStyle ("skinClass", LoginSkin); pour lier la vue à la peau –

+0

Je suis presque certain que this.width/this.height dans votre LoginView reflétera la taille basée sur la peau. J'espère que cela pourra aider. –

Répondre

1

Et en partie, il est calculé en fonction de votre peau, de sorte que vous ne connaîtrez pas le height/width au moment où votre peau est initialisée. Essayez de lier contre hostComponent.width et vous verrez dans certains cas que vous allez vous retrouver dans une boucle sans fin. Vous devriez plutôt travailler avec les propriétés top, bottom, left et right. Par exemple, si vous définissez bottom sur 0, cela signifie que vous voulez l'avoir à partir de 0 pixel au-dessus du bas de votre composant.

Par exemple, nous allons tracer une ligne en dessous de votre composante de gauche à droite:

<s:Line left="0" right="0" bottom="0"> 
    <s:stroke> 
     <s:SolidColorStroke weight="1"/> 
    </s:stroke> 
    </s:Line> 
Questions connexes