2010-11-03 14 views
0

Je sais intégrer une image, mais je souhaite la remplacer par une image sur l'une des images intégrées (appel de fonction).Modification d'une image en données incorporées

[Bindable] 
public var icoEstado:Class; 

[Embed(source="src/assets/etapa.n.png")] 
[Bindable] 
private var estadoN:Class; 

[Embed(source="src/assets/etapa.ok.png")] 
[Bindable] 
private var estadoOk:Class; 

[Embed(source="src/assets/etapa.x.png")] 
[Bindable] 
private var estadoX:Class; 

public function estado(i:String):void 
{ 
switch(i) 
{ 
    default: 
    case 'x': 
    icoEstado = estadoX; 
    return; 
    case 'n': 
    icoEstado = estadoN; 
    return; 
    case 'k': 
    icoEstado = estadoOk; 
    return; 
} 
} 

puis ...

<s:BitmapImage id="ico" source="{icoEstado}"/> 

Ce ne fonctionne pas ... un conseil?

Merci!

+0

Que fait-il? Si vous venez de mettre source = "/ src/assets/etapa.x.png" ou quelque chose, voyez-vous cette image? (note de côté: vos variables privées n'ont pas besoin d'être Bindable) – Kricket

+0

Si je mets ico.source = "../ src/assets/etapa.x.png" cela ne fonctionne pas ... il a seulement travaillé en mettant la source = "{estadoX}", ou source = "{estadoOk}" directement sur la balise BitmapImage. (mais encore une fois, je voudrais le changer de façon dinamique) – huff

Répondre

0

La seule solution que j'ai trouvé est d'utiliser le composant mx:Image à la place.