AS3将类导入主时间轴

时间:2011-11-20 05:08:38

标签: flash actionscript-3 class classpath

您好,我有一个Android项目的空气,我想导入一个actionscript类,以便在主时间轴中使用。我写了这个类并导入了它,但是我得到了以下错误:

第1行5001:包'com'的名称不反映此文件的位置。请更改此文件中的包定义名称,或移动文件。

以下是时间表

            import com.networkScores;

            var network:networkScores = new networkScores();
            addChild(network);
            trace(network.arr[0]); 

这是来自班级文件

            package com 
            {
                import flash.net.URLLoader;
                import flash.net.URLRequest;
                import flash.events.Event;
                import flash.display.MovieClip;

                public class networkScores extends MovieClip
                {

                         public function networkScores() 
                         {
                         }
                }
             }

任何人都知道我在这里做错了什么?

3 个答案:

答案 0 :(得分:3)

确保将.as类文件保存在com文件夹中,因为名称空间本质上是文件夹结构。然后确保类路径指向正确的位置。 例如,“c:/as3dev/projectname/com/networkScores.as”,您可以添加“c:/as3dev/projectname/”的类路径。然后当然在你的项目属性中将class设置为com.networkScores,如果你还没有这样做的话。

答案 1 :(得分:1)

我猜你的班级在错误的目录,文件夹中。包名称基本上定义了如何在源目录之间分配类。这样做是为了确保各种相同的命名类兼容性。我猜,你将networkScores类放在主应用程序所在的目录中。在这种情况下,你应该将包定义重命名为空,如下所示:

package
{
    public class networkScores extends MovieClip
    {
        public function networkScores() 
        {
        }
    }
}

或者,您应该将networkScores类放入项目主目录中名为“com”的目录/文件夹中。

您可以阅读有关包here的更多信息。

答案 2 :(得分:0)

可能存在不需要的项目路径,我遇到了同样的问题 我只是将我的帧粘贴到一个新文件中,然后就可以了。