我前段时间遇到过这个问题。我所做的是在按钮的每个状态中搜索 DisplayObject。我会在这里放一些可能对你有帮助的代码。您必须意识到,如果您的按钮在所有四个框架中都有对象,那么您也会在所有状态下找到您的对象。
private var Obj1:DisplayObject, Obj2:DisplayObject,
Obj3:DisplayObject, Obj2:DisplayObject;
private function searchInChildren(spr:DisplayObject, name:String):void
{
for (var i:int = 0; i < spr.numChildren; i++)
{
if(spr.getChildAt(i).name == name)
{
return spr.getChildAt(i);
}
}
return null;
}
public function searchControllers(_ref:SimpleButton, name:String):void
{
try{
Obj1 = searchInChildren(_ref.upState, name);
Obj2 = searchInChildren(_ref.overState, name);
Obj3 = searchInChildren(_ref.downState, name);
Obj4 = searchInChildren(_ref.hitTestState, name);
} catch (e:Error) {
trace("error: "+e+", when trying to search for controllers");
}
}