我如何创建自己的帧动画和播放movieclip或任何movieclip扩展..我有这个代码,但是错了 - 我是flash builder初学者所以我不知道它是如何工作的..我可以在MovieClip中做到这一点
<?xml version="1.0" encoding="utf-8"?>
public var mc:MovieClip;
protected function application1_creationCompleteHandler(event:FlexEvent):void
{
var comp:UIComponent = new UIComponent();
this.addElement(comp);
mc = new MovieClip();
for (var i:int =0; i<100; i++)
{
var rect:Sprite = new Sprite();
rect.graphics.beginFill(0x330000);
rect.graphics.drawCircle(0, 0, 20);
rect.graphics.endFill();
rect.x=30 + (i%40)*5;
rect.y=100;
mc.addChild(rect);
}
comp.addChild(mc);
}
protected function button1_clickHandler(event:MouseEvent):void
{
mc.play();
}
]]>
</fx:Script>
<s:Button click="button1_clickHandler(event)"/>
感谢您的帮助
答案 0 :(得分:0)
遗憾的是,无法在运行时创建MovieClip动画,只能使用Flash创作(或者可能导出为swf的其他工具)创建动画。
您可以选择创建一堆Sprite
或Shape
,并在逐帧显示时从显示列表中添加/删除这些内容。另一种选择,如果你的图形更简单,你可以为每一帧动态生成它们。
答案 1 :(得分:0)
我认为我们需要更多关于您希望创建的动画类型的信息。
取决于它是什么,理论上它可能是非常可能的。您将创建一个扩展MovieClip的单独类,并在'for循环'中实例化它。该类可以有各种动画指令和逻辑。扩展'MovieClip'并不是唯一的选择,但它确实可以让你使用Event.ENTER_FRAME,你需要使用Sprite来设置一个内部Timer或者使用一个公共的'update'或'draw'方法从您的主要代码中调用。
还有“Motion”类允许您加载具有相当大量控制权的XML动画指令。查找fl.motion.Animator。
你想做什么?欢迎使用ActionScript!