2012-04-18 64 views
1

我已經得到了很多的圖標的應用程序,現在它在 嵌入式腳本標記 例如:在我的腳本標籤我有如何在flex中使用css文件作爲圖像源?

[Embed(source="/assets/icons/save_it_icon.png")] 

    [Bindable] 

    private var saveIcon:Class; 

在我的Flex組件:

<mx:Image id ="savePaneImg" source="{saveIcon}" 
     buttonMode="true" 
     toolTip="Save comments" 
     click="doSave();" /> 

我如何將這個圖像源移動到css文件,以便在不同的組件之間重新使用 ?

在此先感謝

回答

2

source不是樣式屬性,你不能在CSS設置。相反,我建議你創建一個類,所有的圖像將被存儲。

[Bindable] 
public class IconManager { 

    [Embed(source="/assets/icons/save_it_icon.png")] 
    public static var saveIcon:Class; 

} 

用法:

<mx:Image id ="savePaneImg" source="{IconManager.saveIcon}" 
      buttonMode="true" 
      toolTip="Save comments" 
      click="doSave();" /> 
+0

+1爲綁定,但你*可以*使用自定義元標記和CSS來管理資源,只有它必須在運行時使用反射,而且會更加複雜。 – weltraumpirat 2012-04-18 09:37:36

0

檢查這個代碼,這會幫助你....

public class IconSrc{ 
    [Embed(source="/assets/icons/save_it_icon.png")] 
    [Bindable] 
    private var _icon1:Class 
    public static function getSource(icon:String):Class{ 
    switch(icon){ 
    case "icon1": return _icon1;break; 
     . 
     . 
     . 
    } 
    } 
} 

<mx:Image id ="savePaneImg" source="{IconSrc.getSource('icon1')}" 
      buttonMode="true" 
      toolTip="Save comments" 
      click="doSave();" /> 
+0

你的代碼與問題中的代碼有什麼不同? – 2012-04-18 14:58:53

+0

其實通過錯誤我添加了以前的代碼 – 2012-04-18 15:05:27

+0

好..現在它更有意義;) – 2012-04-18 15:07:22

相關問題