flash – 在AS3中访问Document类

前端之家收集整理的这篇文章主要介绍了flash – 在AS3中访问Document类前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
实例类如何访问Document类?

即使在使用Flash中的“属性”栏命名Document类后,尝试从其他类访问它也通常会失败,表示“尝试访问未定义的属性

一个解决方案总是将Document类转换为自身!例如.

Main(Main).globalMethod();

但是有时候甚至这个恒星都失败了,然后除了显而易见之外,通常都没有出路.

class Other{

   var parentClass:Main;
   public function Other(parent:Main){
       parentClass = parent;            // pointer to the Main class in a local var!

       Main(parentClass).globalMethod();
   }
}

解决方法

您可以在文档类中使用单例(Main,在您的示例中),这允许您从任何地方访问该实例.

public class Main extends Sprite {
    private static var _instance:Main;
    public static function get instance():Main { return _instance; }

    public function Main() {
        _instance = this;
       // etc...
    }

    // etc...
}

然后,您访问主实例,如下所示:

public class Other {
    public function Other() {
        Main.instance.usefulInstanceMethod();
    }
}

文档类是单例模式的一个很好的候选者,因为通常只应该有可用的实例.

猜你在找的Flash相关文章