【问题标题】:Set the icon of a Flex button with a Sprite in runtime在运行时使用 Sprite 设置 Flex 按钮的图标
【发布时间】:2009-03-15 14:44:33
【问题描述】:

我想在flex中设置一个按钮的图标。

默认语法如下。

myButton.setStyle("icon", iconClass);

iconClass 通常是一个嵌入对象。

但我想做的是,使用标准 Sprite 或 MovieClip(我在运行时找到)作为图标。

这可能吗?有人做过吗?

谢谢!

【问题讨论】:

    标签: apache-flex actionscript-3 button icons


    【解决方案1】:

    这实际上是 Flex 框架在样式方面的致命缺陷。当 Flex 获取图标的样式值时,它假定它的类型为 Class,并且实例化对象的类型为 DisplayObject(或派生的)。只需对代码(mx:Image 等类对其源属性所做的)进行微不足道的更改,即可测试样式的值是否为 DisplayObject 类型,如果是,则跳过当前执行的构造步骤。

    如果您不想更改 Flex 框架源,Ben 的解决方案是最好的解决方案。就个人而言,我最终会对特定组件进行猴子修补以接受实例化的DisplayObjects 而不是Classes. 一些组件比其他组件更难修补。

    Doug McCune explaining how to monkey patch the Flex framework.

    【讨论】:

      【解决方案2】:

      找到了可能的解决方案。 http://blog.benstucki.net/?p=42 之前会给出这个并报告。

      【讨论】:

      • 嗨 Chands,虽然此链接可能会回答问题,但最好在此处包含答案的基本部分并提供链接以供参考。如果链接页面发生更改,仅链接答案可能会失效。请看这里:Why and how are some answers deleted?
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-02-09
      • 1970-01-01
      相关资源
      最近更新 更多