我正在尝试为每个按钮添加不同的图标。我已准备好我的皮肤文件,但不确定是否必须为每个按钮创建不同的皮肤类。听起来效率低下。有什么建议吗?
<s:Button id="pass"
width="110"
height="35"
fontWeight="bold"
fontSize="12"
fontFamily="arial"
label="Past Track"
click="pass_clickHandler(event)"
skinClass="skins.CustomSkin"/>
<s:Button id="future"
width="110"
height="20"
fontWeight="bold"
fontSize="12"
fontFamily="arial"
label="Future Plan"
click="future_clickHandler(event)"
skinClass="skins.CustomSkin"/>
皮肤:
<!-- layer 2: fill -->
<!--- @private -->
<s:Rect id="fill" left="1" right="1" top="1" bottom="1" radiusX="2">
<s:fill>
<s:LinearGradient rotation="90">
<s:GradientEntry color="#304fd7"
color.over="#4b6bf6"
color.down="0xAAAAAA"
alpha="0.85" />
<s:GradientEntry color="#1f38a3"
color.over="#3653cf"
color.down="0x929496"
alpha="0.85" />
</s:LinearGradient>
</s:fill>
</s:Rect>
<!-- icon --> // I could add my icon here but that would make me create
// a different icon image for different button
答案 0 :(得分:3)
它不是内置的,但有些人创建了支持Spark Buttons中图标的组件:
http://themorphicgroup.net/blog/?p=83
http://www.andymcintosh.com/?p=179
答案 1 :(得分:3)
安装10.2 Flash Player和稳定的Hero SDK(4.5.0.19786)。然后,您可以使用Spark按钮的icon属性。
http://labs.adobe.com/downloads/flashplayer10.html http://opensource.adobe.com/wiki/display/flexsdk/Download+Flex+Hero
注意您的项目,您必须专门针对播放器版本10.2.0。除非我的环境存在问题,否则在Flash Builder的项目编译器设置中使用“使用Flex SDK所需的最低版本”选项不适用于此“稳定”的sdk。我不明白为什么这样的事情不能像你认为的那样表现。如果有人知道FB在哪里找到这个最小的播放器版本,请插入。我在flex-config.xml文件中看到以下内容(在sdk的frameworks文件夹中):
&lt ;! - 指定将运行已编译的SWF的最小播放器版本。 - &GT;
&lt;目标玩家&GT; 10.2.0&LT; /目标玩家GT;
Flash Builder似乎忽略了这一点,因为在项目属性中使用最低要求的版本设置时,它仍然试图查看libs / player / 10.1文件夹。这是Adobe的一个主要难点,似乎每个版本都会引入一些小问题,这些问题最终会让人们感到沮丧,因为放弃Flash作为一个可行的开发平台。如果有这个adobe的修复程序,请帮助我们并在此发布。