我有一个自定义Flex Toggleswitch组件,可以更改交换机的文本值。
package skins
{
import spark.skins.mobile.ToggleSwitchSkin;
public class MyToggleSwitchSkin extends ToggleSwitchSkin
{
public function MyToggleSwitchSkin()
{
super();
selectedLabel="Serviceable";
unselectedLabel="Fault";
}
}
}
如果我使用MXML标记添加控件,它可以正常工作。但是,当我使用动作脚本添加组件时,它不会。
import skins.MyToggleSwitchSkin;
public function addToggle():void {
var myCustomToggle:MyToggleSwitchSkin = new MyToggleSwitchSkin();
hgroup.addElement(myCustomToggle);
}
控制dsiplay但不会激活。
我错过了哪些想法?
答案 0 :(得分:0)
在没有看到您的MXML代码的情况下,比较两种方法很难,但我相信@al_Birdy解决了这个问题。您已经创建了自定义ToggleSwitchSkin;不是自定义ToggleSwitch。
修改你的addToggle()方法,如下所示:
public function addToggle():void {
var myCustomToggle:MyToggleSwitch = new MyToggleSwitch();
myCustomToggle.setStyle('skinClass',skins.MyToggleSwitchSkin);
hgroup.addElement(myCustomToggle);
}
我怀疑你会有更好的运气。