2008-09-30 4 views
0

J'essaie d'implémenter une icône personnalisée "image brisée" pour apparaître si je ne peux pas charger une image. Pour ce faire, j'ai utilisé le paramètre brokenImageSkin, mais il restitue l'image à sa vraie résolution, ce qui finit par couper l'image si la taille du contrôle est contrainte.brokenImageSkin dimensions dans Flex

<mx:Image brokenImageSkin="@Embed('/assets/placeholder.png')" source="http://www.example.com/bad_url.png"/> 

Comment puis-je mettre à l'échelle brokenImageSkin à une largeur et une hauteur personnalisées?

Répondre

0
  1. Créez une nouvelle classe qui étend ProgrammaticSkin. Intégrez votre image en utilisant le mot-clé meta [Embed] et associez-le à une variable de type Class (voir la documentation correspondante)

  2. Override updateDisplaylist.

  3. Appelez graphics.clear() dans cette fonction.

  4. Appel Graphics.beginBitmapFill puis appliquer les dimensions appropriées et mise à l'échelle basées sur la unscaledWidth et unscaledHeight passèrent.

Ceci est plus compliqué, mais il est le seul moyen que je connaisse pour obtenir plus de contrôle sur une opération de skinning personnalisé comme ça.

Questions connexes