Actionscript 3 AS3两部电影共享同一类

Actionscript 3 AS3两部电影共享同一类,actionscript-3,class,flash-cs5,flash-ide,Actionscript 3,Class,Flash Cs5,Flash Ide,我的库中有两个MovieClip符号,我希望它们共享同一个类,但Flash不允许我将同一个类分配给任何两个不同的MC符号,因此我创建了两个伪类,它们扩展了我最初希望共享的类 因此,由两个不同类定义的两个MC符号扩展了一个不同的类,这允许我共享同一段代码 我的问题:有没有更好的方法在两个或更多不同的库符号之间共享一个类?无论您在做什么,您都不理解“使用”与电影剪辑对象关联的类的概念。您不可能为两个对象指定相同的类名,即使您是,相信我,IDE实际上正在创建两个扩展原始类的不同对象。您可以将库项直接分

我的库中有两个MovieClip符号,我希望它们共享同一个类,但Flash不允许我将同一个类分配给任何两个不同的MC符号,因此我创建了两个伪类,它们扩展了我最初希望共享的类

因此,由两个不同类定义的两个MC符号扩展了一个不同的类,这允许我共享同一段代码


我的问题:有没有更好的方法在两个或更多不同的库符号之间共享一个类?

无论您在做什么,您都不理解“使用”与电影剪辑对象关联的类的概念。您不可能为两个对象指定相同的类名,即使您是,相信我,IDE实际上正在创建两个扩展原始类的不同对象。您可以将库项直接分配给类,也可以定义一个新的类名,该类名将要引用的.as文件/类扩展为基类。后者是一种解决方案,旨在简单地将具有基本功能的基类应用于多个对象


这方面的一个示例是定义一个基本类,该类捕获滚动和转出事件,并使剪辑在滚入/滚出时增长和收缩。然后在movieclip中创建10种不同类型的按钮,并将创建的类指定为基类,同时为库对象本身指定唯一的名称。

您没有创建伪类。见我对@Cameron回答的评论。无论您是否定义了类,每个库项都已经是唯一的类,如果不指定类标识符,flash会自动创建一个类。@BoltClock删除flash CS5/CS4/CS3标记是错误的。这与IDE特别相关。是的,你是对的。我应该选择更好的措辞。当我说假的时候,我实际上是在考虑代理。另外,感谢Flash为每个库项目自动创建类这一事实,我认为Flash只会为包含代码的符号自动创建类,并且它会将这些符号放在自动创建的包中,该包会显示导出swf文件的名称,前缀为_fla(例如ExportedSwfName_fla)。在澄清和示例方面,我比你强。使用基类来获得这种行为是很常见的。+1,这比我的答案(现已删除)要好得多。我忘记了命名库对象……lol omg使用Flash已有10多年了,只是几乎没有意识到有“基类”主类下面的字段。哈。