我尝试从flex调用swf函数(setPoints(nr:int):void;)。
[Embed(source="img/anim/x2.swf")]
[Bindable]
public static var points:Class;
public function strikeAnimation(area:SpriteVisualElement, strike:int):void{
var mc:MovieClip = new points() as MovieClip;
area.addChild(mc);
//how to run?
area.mc.setpoints(strike);
}
有什么想法吗?
答案 0 :(得分:1)
我尝试过这样的调用函数 - area.getChildIndex(area.getChildIndex(MC))的设定值(击);
您收到上述代码行错误的原因是getChildIndex需要一个DisplayObject并返回一个Integer。
所以,这可能有用:
area.getChildIndex(mc)
但是,它返回一个整数,你不能将其用作另一个getChildIndex调用的输入,因为整数与子节点不同。
这样的事情可以让你得到你孩子的一个实例:
var myChild :MovieClip = area.getChildAt(area.getChildIndex(mc))
但是,setpoints方法不是movieclip的文档化方法;因此,要在自定义影片剪辑上执行setpoints方法,您必须将其转换为自定义类型。概念上是这样的:
(myChild as myCustomType).setpoints(strike);