选择切换按钮时更改其背景颜色的最简单方法是什么?
我尝试为按钮创建自定义皮肤并将其应用于 downSkin 属性,但我不知道如何从皮肤中更改背景颜色。如果可能的话,我也想避免使用图像作为背景。
选择切换按钮时更改其背景颜色的最简单方法是什么?
我尝试为按钮创建自定义皮肤并将其应用于 downSkin 属性,但我不知道如何从皮肤中更改背景颜色。如果可能的话,我也想避免使用图像作为背景。
我希望我明白你需要什么。
在您的皮肤文件中,状态 upAndSelected 是您在选择切换按钮时需要指定颜色的状态。您可以从 Flex 中复制生成的皮肤代码进行修改或查看下面的代码。将其添加到第 2 层下的</s:Rect>
标签下方<!--
:填充 @private-->`
<s:Rect id="fill2" left="1" right="1" top="1" bottom="1" radiusX="2">
<s:fill>
<s:LinearGradient rotation="90">
<s:GradientEntry color="0xFFFFFF"
color.upAndSelected="#333333" // you can modify color here
alpha="0.85"
/>
<s:GradientEntry color="0xD8D8D8"
color.upAndSelected="red" // you can modify color here
alpha.downAndSelected="1" />
</s:LinearGradient>
</s:fill>
</s:Rect>
将上面的代码粘贴到下面
<!-- 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="0xFFFFFF"
color.selectedUpStates="0xBBBDBD"
color.overStates="0xBBBDBD"
color.downStates="0xAAAAAA"
alpha="0.85"
alpha.overAndSelected="1" />
<s:GradientEntry color="0xD8D8D8"
color.selectedUpStates="0x9FA0A1"
color.over="0x9FA0A1"
color.overAndSelected="0x8E8F90"
color.downStates="0x929496"
alpha="0.85"
alpha.overAndSelected="1" />
</s:LinearGradient>
</s:fill>
</s:Rect>
希望能帮助到你。
没有简单的方法。最好的办法是打开 Flash Professional 并创建一个皮肤;然后将该皮肤作为样式分配给按钮,使用如下所示:
MyButton.setStyle('skin', mySkin);
[如果您指的是 Spark ToggleButton 而不是 Halo ToggleButton,则此建议可能不适用[