2010-11-03 34 views
0

我知道如何嵌入图像,但是我希望根据请求(函数调用)将图像更改为任何嵌入图像。将图像更改为嵌入数据

[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; 
} 
} 

然后......

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

这是不工作...任何建议吗?

谢谢!

+0

它在做什么?如果你只是把source =“/ src/assets/etapa.x.png”或其他东西,你看到那个图像吗? (注意:你的私有变量不需要是可绑定的) – Kricket 2010-11-03 15:28:01

+0

如果我把ico.source =“../ src/assets/etapa.x.png”它不起作用......它只能把源码=“{estadoX}”或source =“{estadoOk}”直接在BitmapImage标签上。 (但是,再一次,我想改变它dinamically) – huff 2010-11-03 15:39:14

回答

0

我发现的唯一解决方案是使用mx:Image组件代替。