Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Flash/Flex > Flex
Flex Forum d'entraide sur la programmation Adobe Flex : applications Internet riches (RIA)
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 21/10/2011, 20h08   #1
Membre régulier
 
Inscription : mars 2004
Messages : 201
Détails du profil
Informations forums :
Inscription : mars 2004
Messages : 201
Points : 72
Points : 72
Par défaut [Spark] Comment obtenir ce renderer ?

Bonjour à tous,

Je cherche à obtenir un renderer particulier, qui permettrait d'afficher du texte sur une même ligne, dans deux couleurs distinctes.
Un peu à la manière de l'application "Photos" sur iOS:


Je sais qu'il existe le composant IconItemRenderer qui est proche du rendu que je souhaite obtenir, donc je me demandais s'il était possible de le modif en CSS afin d'obtenir ce que je veux.

Merci !!
hush est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/10/2011, 18h22   #2
Membre Expert
 
Avatar de Madfrix
 
Inscription : juin 2007
Messages : 2 279
Détails du profil
Informations personnelles :
Localisation : France, Gironde (Aquitaine)

Informations forums :
Inscription : juin 2007
Messages : 2 279
Points : 2 327
Points : 2 327
Bonjour,

il vaut mieux gérer 2 labels dans ton itemRenderer et gérer le css ou les propriétés sur chacun d'eux
__________________
Je ne réponds pas aux questions envoyées par mp
Madfrix est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/10/2011, 21h07   #3
Membre régulier
 
Inscription : mars 2004
Messages : 201
Détails du profil
Informations forums :
Inscription : mars 2004
Messages : 201
Points : 72
Points : 72
Voilà ma solution, si ça peut en aider certains...
J'ai surchargé la classe IconItemRenderer pour lui faire adopter le comportement que je souhaitais.

La classe:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
 
package com.xxx.renderer
{
	import spark.components.IconItemRenderer;
	import spark.components.supportClasses.StyleableTextField;
 
	public class InlineIconItemRenderer extends IconItemRenderer
	{
		public function InlineIconItemRenderer()
		{
			super();
		}
 
		override protected function layoutContents(unscaledWidth:Number, unscaledHeight:Number):void
		{
			var messageDisplayReference:StyleableTextField = (messageDisplay) ? messageDisplay : null;
			messageDisplay = null;
 
			super.layoutContents(unscaledWidth, unscaledHeight);
 
			if (messageDisplayReference)
			{
				var spaceWidth:Number = labelDisplay.textWidth / labelDisplay.text.length;
 
				messageDisplay = messageDisplayReference;
				messageDisplay.x = labelDisplay.x + labelDisplay.textWidth + spaceWidth;
				messageDisplay.y = (labelDisplay.y + labelDisplay.height) - messageDisplay.height;
			}
		}
	}
}
Et si on veut modifier le style:
Code :
1
2
3
4
5
6
7
8
9
10
 
@namespace renderer "com.xxx.renderer.*";
 
renderer|InlineIconItemRenderer {
	messageStyleName: InlineIconItemRendererMessage
}
 
.InlineIconItemRendererMessage {
	/* .... */
}
Résultat:
hush est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 07h45.


 
 
 
 
Partenaires

Hébergement Web