【发布时间】:2014-09-26 11:07:06
【问题描述】:
我想通过扩展一个 spark Button 类来创建一个自定义的可重用组件,以便它具有一个复选框和一个显示图像的标签。选中复选框时,将显示图像而不是标签。图像路径应作为 API 公开。我们如何扩展 spark.components.Button 使其带有标签或图像的复选框(图像路径应该是动态的)。
我尝试如下扩展 Button 类,但不确定如何在其中创建复选框以及如何将图像路径作为参数传递给它。
package myClasses
{
import spark.components.Button;
public class ImageCheckBox extends Button
{
public function ImageButton()
{
super();
this.buttonMode = true;
}
}
}
我想在应用程序中使用类似下面的自定义组件。
<myClasses:ImageCheckBox skinClass="mySkins.HelpButtonSkin" path="...."" label="Show Image" />
【问题讨论】:
-
我想把它用作一个可重用的组件,无论我在哪里使用它,我都可以将图像路径动态传递给这个组件。
-
我认为你不需要从 Button 扩展。从 SkinnableComponent 扩展并为此组件创建皮肤。在皮肤中,您声明皮肤部件(复选框、标签、图像)
-
我同意安东的观点。正确的方法(由于 spark 架构)是使用所需的皮肤部件和皮肤状态创建自己的组件,并为其实现默认皮肤。
标签: apache-flex adobe mxml flex-spark