设置一个Flex按钮的图标在运行时雪碧(Set the icon of a Flex button

2019-09-27 02:42发布

我想设置一个按钮的图标弯曲。

默认语法如下。

myButton.setStyle("icon", iconClass);

和iconClass通常为嵌入的对象。

但我想要做的是,使用一个标准的雪碧或MovieClip的 (我在运行时发现)的图标。

这可能吗? 有没有人这样做呢?

谢谢!

Answer 1:

这实际上是在Flex的在问候造型框架的致命缺陷。 时,Flex抓起样式值用于一个图标它假定它是类型的Class和实例化的对象将是类型DisplayObject (或导出)。 它的代码一个微不足道的改变(其类,如mx:Image为它们的源属性来完成),以测试该样式的值是否为类型DisplayObject如果是这样,就跳过它目前执行的建设步伐。

Ben的解决方案是最好的,如果你不希望改变Flex框架源。 就个人而言,我最终猴子补丁的具体组件接受实例化DisplayObjects ,而不是Classes. 有些组件是一种痛苦比别人修补。

道格·麦克卡尼解释如何猴补丁Flex框架。



Answer 2:

发现了一个可能的解决方案。 http://blog.benstucki.net/?p=42要把这以前和报告。



文章来源: Set the icon of a Flex button with a Sprite in runtime