Android就像模式锁AS3和Flash CC一样

时间:2015-03-24 07:08:37

标签: actionscript-3 flash

我找到了这篇文章,这正是我想要的,但我想由于Flash版本的不同,我无法让它发挥作用。 发布:Action Script 3: Adding an gotoAndStop Animation

我得到的错误是:"

  

1013:private属性只能用于class属性   定义"

这是用于完成lineContainer声明的行。

我尝试在课堂内声明它,但后来我得到错误说明:

  

"提供的显示对象必须是来电者的孩子"。

我对flash和AS3很新,所以我无法解决这个问题。我正在使用Flash CC。任何帮助都会很棒。谢谢你的时间。

2 个答案:

答案 0 :(得分:0)

我认为您在时间轴中使用关键字private。您无法在时间轴中声明全局变量。你想要使用课程。

您的第二个问题是this.getChildIndex(one)行。很可能one不存在。

答案 1 :(得分:0)

根据评论中的代码(我修复了一些缺少的大括号):

package 
{
    import flash.display.Sprite;
    import flash.display.Shape;

    private var lineContainer:Shape = new Shape(); // ERROR

    public class Main extends Sprite { 

        public function Main():void
        {
            addChildAt(lineContainer, this.getChildIndex(one));
            addListeners();
        }

    }

}

你得到的错误:

  

1013:private属性只能用于类属性定义。“

这是因为您在private类之外指定了Main属性。此外,变量one未在类中的任何位置声明,因此也应该抛出另一个错误。您需要创建名为one的属性或函数变量,然后根据需要设置它,然后将其用作getChildIndex()函数调用的参数

相反,你应该这样做:

package 
{
    import flash.display.Sprite;
    import flash.display.Shape;

    public class Main extends Sprite { 

        private var lineContainer:Shape = new Shape();

        public function Main():void
        {
            addChildAt(lineContainer, this.getChildIndex(one));
            addListeners();
        }

    }

}

尝试此操作并重新编译并查看哪些错误(如果仍有)。还要确保此代码位于名为“Main.as”的文件中。