首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在AS3中使用MovieClip作为参数

在AS3中使用MovieClip作为参数
EN

Stack Overflow用户
提问于 2013-01-05 11:25:43
回答 3查看 1.6K关注 0票数 0

我在将MovieClips附加到类的不同实例时遇到了问题。老实说,我对ActionScript 3还是个新手,所以这个问题可能有点麻烦。虽然我做了调查,但没有找到我期望的答案。

代码语言:javascript
运行
复制
function AddNewElement(clip:MovieClip, array:Array, name:String, firstValue:int, secondValue:int):Element

您可能已经猜到了,这是我创建的函数,用于以动态方式创建类的实例并将它们添加到数组中。不过,我在第一个参数上遇到了问题。如何将MovieClip从我的库传递到此函数?

我看到了很多类似问题的答案,比如每个MovieClip都应该是一个独立的类,但由于我有大约40个MC,我想把它们都用于或多或少相同的事情上,我觉得这会扼杀类的目的,真的。

我应该如何处理这个问题?

EN

Stack Overflow用户

发布于 2013-01-05 11:37:25

当你在闪存中创建一个MovieClip时,它会给你一些选项,其中一个选项是让闪存为该MovieClip创建一个类。也就是说,如果您将该选项应用于所有40个影片剪辑,则可以创建类似于主影片剪辑类的内容,并让每个影片剪辑类扩展主影片剪辑类。唯一的问题是,您必须为40个影片剪辑中的每一个创建一个.as文件,并将extends MasterMovieClip添加到类声明中。例如:

代码语言:javascript
运行
复制
public class MasterMovieClip extends MovieClip {
    // All of the variables and methods pertaining to each movie clip go here
}

那么每个单独的影片剪辑将类似于这个类。

代码语言:javascript
运行
复制
public class IndividualMovieClip_1 extends MasterMovieClip {
    // Just include a constructor, even though you don't have to
}

现在,您所有的单独影片剪辑都将具有相同的方法和变量,只要这些方法和变量是公共的,而不是私有的。

使用此方法时,您必须创建全部40个类,但是,在Flash中创建新影片剪辑时可能会有一种方法来设置影片剪辑扩展的类,这样您就不必创建40个不同的类。

更新:

我重读了你的问题,并想到了其他一些东西,我在第一句话中谈到的选项,关于Flash提供创建类的选项。如果没有给出一个类,那么Flash会在运行时动态创建一个类。我认为当它动态创建一个类时,它不会保持与库电影剪辑相同的名称,所以当你试图将电影剪辑的静态名称传递给你的函数时,它不知道你在说什么,并抛出一个运行时错误。

票数 0
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14168266

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档