如何在 2 个 actionscript3 文件 (.as) 之间传递变量?
我有一个主要的 fla 文件和 3 个作为文件,每个都有一个类...我在 AS2 中有一个基本的 knownelge,但在 AS3 中没有太多
感谢帮助。
如何在 2 个 actionscript3 文件 (.as) 之间传递变量?
我有一个主要的 fla 文件和 3 个作为文件,每个都有一个类...我在 AS2 中有一个基本的 knownelge,但在 AS3 中没有太多
感谢帮助。
您似乎正试图从 Flash 中的任何位置访问一些变量。一种方法是使用静态方法和变量创建一些类。例如:
package somenamespace {
class Registry {
static private var something_:String;
public function get something():String {
return something_;
}
public function set something(v:String):void {
if (something_ === v) return;
something_ = v;
}
}
}
然后您可以从 Flash 中的任何位置访问此变量:
Registry.something = "example";
在类之间传递数据的正确方法是通过引用传递。这比在全局范围内维护数据要好,因为它允许您解耦您的类。
如果没有看到你的类和你试图传递的数据,很难给你具体的建议,但这里有一个使用文档类 (Main.as) 和子类 (Child.as) 的简单示例:
主要作为:
package {
class Main extends MovieClip
{
private var someData:String;
//constructor
function Main()
{
//create the data
someData = "my string";
//create an instance of child
var child:Child = new Child(someData);
}
}
}
孩子.as:
package {
class Child
{
private var someData:String;
//constructor
function Child(initData:String)
{
someData = initData;
trace(someData); // my string
}
}
}
听起来在您的情况下,您需要一个控制器类来实例化您拥有的类并管理它们之间的关系。这将是上面 Main 类的变体,实例化所有三个类并提取和传递它们的数据。