目前我有一个 Array 有 9 个按钮。这称为 BAR.as:
public static var buttonArray: Array = new Array()
for(var i:int = 0; i<9; i++){
barButton = new button
buttonArray.push(barButton)
buttonArray[i].name = button+(String[i])
buttonArray[i].x = 15+(i*buttonArray[i].width)
addChild(buttonArray[i])
}
在我的按钮类中,我指定了一个 enableButton 函数,这称为 ACTIONBARBUTTON.as:
public static function enableButton(shortcut:int):void{
//instance.refreshThis(shortcut, true)
trace("test")
}
我想做的是有一个函数,我可以调用它来按需启用/禁用这些按钮(而不仅仅是“.enable”/“.disable”),因为它们中的内容需要经常更改。我的方法是通过 BAR.as:
public static function updateWeapons(level: int):void{
buttonArray[level-1].enableButton(level)
}
但是,这会返回以下错误:
ReferenceError: Error #1069: Property enableButton not found on src.actionbar.button and there is no default value.
at src.actionbar::bar$/updateWeapons()
at src.game::player$/levelup()
at src.game::gameplay/init()
at flash.display::DisplayObjectContainer/addChildAt()
at src.camera::control()
at flash.display::Sprite/constructChildren()
at flash.display::Sprite()
at flash.display::MovieClip()
只需运行 button.enableButton(1) 即可。