2010-07-15 5 views
0

J'essaye de créer dans Flex une vue de tuile qui montre quelques images qu'un utilisateur a. Les images n'ont pas la même taille, certaines sont petites et d'autres sont grandes. Ce que j'essaie de faire est d'utiliser une liste et de créer un ItemRenderer qui a une propriété Image qui affiche les images de l'utilisateur (les images sont passées à la propriété source de l'objet Image), Je veux le grand images à réduire à la taille de la tuile donc je mets la propriété 'scaleContnet' de l'objet Image à true, mais cela provoque les petites images à l'échelle de la taille de la tuile, ce n'est pas le comportement que je veux . Toutes les images sont intégrées dans les objets Class et sont passées en arguments à ItemRenderer, comment puis-je savoir dans ItemRenderer si je dois définir la propriété 'scaleContnet' de l'objet Image sur true (pour les grandes images) ou false (pour les petites images)?Comment puis-je savoir si une image doit être réduite ou non?

Répondre

0

Untested, mais donner un aller:

<mx:Image id="img" scaleContent="{img.contentWidth > img.width || img.height > img.height}"/> 
+0

ne fonctionne pas bien, les grandes images sont réduites mais pas correctement (comme lorsque vous définissez la valeur de la propriété sur true depuis le début) – user273895

+0

Définir "incorrectement", le format de l'image est-il faux ou l'aspect de l'image mal? Dans le premier cas, définissez maintainAspectRatio sur true. Si ce dernier, essayez de définir smoothBitmapContent à true. J'espère que cela pourra aider. –

0

Je dis spécifier la largeur et la hauteur dans votre étiquette. comme <mx:Image width="100" height="200" source="XXX" /> Cela limiterait la taille de votre image à 100 largeur et 200 hauteur.

Questions connexes