0

メインにアレイがあります

public var graphArray:Array = [1,2,3,4,5,6];

そして、以下を使用してタイムラインに配置したMovieClip内からアクセスしようとしています。

var graph1scale:Number = MovieClip(root).graphArray[0]

それは私には理にかなっているように見えますが、実行しようとすると、次のエラーが発生します。

TypeError:エラー#1009:nullオブジェクト参照のプロパティまたはメソッドにアクセスできません。

MovieClip(root)を使用してアクセスしようとするのは間違っていますか?私は外部クラスを使い始めたばかりで(これは私の最初のプロジェクトです)、通常はタイムライン上ですべてを行います。ですから、MovieClip(root)は私にはなじみがありますが、ここで行うのは正しくないと思います。

Main.asから変数にアクセスする方法はありますか?

-----解決済み-----

MovieClip(root)がずっと機能していることに気づきましたが、配列がMain.asで定義される前に、配列を呼び出していました。私はgraphArrayの呼び出しを遅らせましたが、うまくいきました。

それがどのように意味があるのか​​はわかりませんが、graphArrayはmain.asクラス全体で最初に定義したものです。

4

1 に答える 1

1

代わりにこれを使用してみてください

MovieClip(this.root)

これはあなたがここで見ることができるテストで私のために働きます:

http://marksost.com/test/as3arrayaccess/

そしてここのソースファイル:

http://marksost.com/test/as3arrayaccess/test.zip

于 2012-07-19T02:03:40.913 に答える