0

ドキュメントクラスで完全にフラッシュアプ​​リをコーディングしようとしています。タッチ スクリーンで GestureWorks を使用しています。ユーザーが基本的にボタンを押すと、特定のグラフィックを非表示にするメソッドが呼び出されますが、タッチしたグラフィックは非表示になりません。

基本的に、「e.target」以外のメソッドを使用して画面上のグラフィックを参照する方法が必要です。

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

            //This code works 
            private function photo1SpriteFlickHandler(e:GestureEvent):void {
                    var openTween:Tween = new Tween(e.target, "x", Strong.easeOut, 232, 970, 5, true);
            }

            //this code gives me a null object reference 

            private function photo1SpriteFlickHandler(e:GestureEvent):void {
                    var openTween:Tween = new Tween(photo1Sprite, "x", Strong.easeOut, 232, 970, 5, true);
            }

            //photo1Sprite has already been programatically added to the screen as so:
            var photo1Sprite = new TouchSprite();
                    var photo1Loader=new Loader();
                    photo1Loader.load(new URLRequest("media/photos1/photo1.jpg"));
                    photo1Loader.contentLoaderInfo.addEventListener(Event.COMPLETE,loaderComplete);

                    photo1Sprite.x = 232;
                    photo1Sprite.y = 538;
                    photo1Sprite.scaleX = .3;
                    photo1Sprite.scaleY = .3;
                    photo1Sprite.blobContainerEnabled = true;
                    photo1Sprite.addEventListener(TouchEvent.TOUCH_DOWN, startDrag_Press);
                    photo1Sprite.addEventListener(TouchEvent.TOUCH_UP, stopDrag_Release);

                    photo1Sprite.addChild(photo1Loader);

                addChild(photo1Sprite);

photo1Sprite でボタンクリックが発生すると、「e.target」として photo1Sprite にアクセスできます。

問題が発生するのは、(photo1Sprite ではなく) 1 つのボタンをクリックして、photo1Sprite に影響を与える場合です。

したがって、「e.target」を使用してメソッドが直接接続されている場合は photo1Sprite を反応させることができますが、画面上の別の要素から呼び出されたメソッドから呼び出そうとする場合は反応しません。

4

1 に答える 1

0

Tween クラスのコンストラクターが最初の引数として何を期待しているのかわかりません。Sprite インスタンスですか、それとも Sprite インスタンスの名前ですか? いずれにしても、photo1SpriteFlickHandler のコンテキストで、photo1Sprite が 1) 定義されていることを確認してください。2) 正しいものを指します。

于 2011-02-10T23:52:32.957 に答える