如何将SWC资产用作FLEX组件外观

时间:2013-10-13 06:24:25

标签: flex

自从我使用Flex以来已经过了几年,但我现在正在做另一个Flex项目,并且无法使用SWC符号作为按钮的背景/皮肤。

我想使用SWC存储一堆图像资源。我想将它们用于图标,以及(我现在正在撰写的内容)按钮的背景图像。我以为我曾经一直使用SWC文件来包含图像资源。

我在这个SWC中有一个符号定义了scale9的符号,我想用它作为按钮的背景图像,但是可以选择HBox。

我设置了所有资产的swc,在我的项目库构建路径中引用它,在Library Compiler下指定为库--ininclude-libraries myIncludedSwx.swc。

我现在可以成功将资产添加到HBoxes:

import com.mySymbols.MySymbol;//The linked SWC asset 
var someIcon: MySymbol =  new MySymbol();
var iconWrapper : UIComponent = new UIComponent();
someFlexContainer.addChild( iconWrapper );

因此,获取资产不是问题。但我无法弄清楚如何将它用作按钮皮肤,因为它是一个movieClip。

这不起作用:

<s:Button label="click" skinClass="com.mySymbols.MySymbol" />

我想要完成的最重要的事情是将图像放入已定义比例尺9的Flex中,并将其用作事物的背景。而且我还没有能够使用SWC来解决这个问题。

感谢任何帮助!

cheers- 达斯汀

1 个答案:

答案 0 :(得分:0)

我得到了它的工作。虽然它不是在swc,而是swf。谢谢@ Reboog711。我必须使用CSS来输入swc符号,如下所示:

#btnBar {
            firstButtonStyleName: yellowPrefrencesBarButtons;
            buttonStyleName: yellowPrefrencesBarButtons;
            lastButtonStyleName: yellowPrefrencesBarButtons;
            color: #999999;
        }

        .yellowPrefrencesBarButtons {
            skin: Embed(source='/../assets/asset-library.swf', symbol='com.foo.bar.assets.yellow_button_down' );
        ...more skins...
        }

或者,当我使用png时,我发现此链接描述了在css中定义比例尺9:http://rupnarayanb.wordpress.com/2010/08/30/mystery-of-scale-9-in-adobe-flex/#comment-95