我正在使用以下Flex组件:http://flashcommander.org/blog/flex-4-mp3-player
此组件附带的皮肤仅允许非常基本的皮肤,例如背景颜色和边框。但是,该组件使用ToggleButton
中定义的Mp3Player.as
:
import spark.components.ToggleButton;
[SkinPart]
public var playPauseButton:ToggleButton;
我想要做的是在项目中为这个控件定义一个替代皮肤,我对Flex和Spark很新,所以我不确定如何定义一个新皮肤。
在Mp3PlayerSkin.mxml
文件中,皮肤定义如下:
<!--- @copy spark.components.VideoPlayer#playPauseButton -->
<s:ToggleButton id="playPauseButton" left="0" bottom="0"
skinClass="spark.skins.spark.mediaClasses.normal.PlayPauseButtonSkin"
focusIn="event.target.depth=1" focusOut="event.target.depth=0" />
我假设我可以创建一个新的class
,虽然我不知道该怎么做,或删除对该类的引用并以某种方式扩展ToggleButton
皮肤。我想我需要以某种方式覆盖'默认'皮肤?
任何指示赞赏......
答案 0 :(得分:0)
看起来我可以执行以下操作:
Mp3PlayerSkin.mxml
文件toggleButtonSkin.mxml
spark.components.VideoPlayer#playPauseButton
类更新Mp3PlayerSkin.mxml
,如下所示:
<s:ToggleButton id="playPauseButton" left="0" bottom="0"
skinClass="org.flashcommander.components.toggleButtonSkin"
focusIn="event.target.depth=1" focusOut="event.target.depth=0" />
现在我可以通过编辑新样式来编辑新的toggleButtonSkin.mxml
文件。