1

通常の as3 swf をエア モバイルにターゲティングするのに問題があるので、簡単なテスト アプリを作成して、どれが問題なのかを確認して理解しようとしました。flashdevelop 4 と最新の AIR SDK を使用しています。

クラス名BlackBoxでエクスポートされた単純なMCでSWCをエクスポートしました 。これが私のメインコードです(パッケージとインポートは省略されていますが、BlackBoxクラスもインポートしました):

public class Main extends Sprite 
{
    public var cajaNegra:MovieClip

    public function Main():void 
    {
        stage.scaleMode = StageScaleMode.NO_SCALE;
        stage.align = StageAlign.TOP_LEFT;
        stage.addEventListener(Event.DEACTIVATE, deactivate);

        // touch or gesture?
        Multitouch.inputMode = MultitouchInputMode.TOUCH_POINT;

        // entry point
        cajaNegra = new BlackBox();
        addChild(cajaNegra)
        cajaNegra.x = stage.stageWidth/2
        cajaNegra.y = stage.stageHeight / 2
        }
}

すべてが正常に機能しますが、src フォルダーにカスタムBlackBox.asを作成すると、アプリに何も表示されません。miTextoという名前のテキスト フィールドを追加しました。

BlackBox.as

public class BlackBox extends MovieClip 
{
    public var miTexto:TextField

    public function BlackBox() 
    {
        super();
        if (stage) init();
        else addEventListener(Event.ADDED_TO_STAGE, init);


    }

    private function init(e:Event = null):void 
    {
        removeEventListener(Event.ADDED_TO_STAGE, init);
        // entry point
        miTexto.text = "changed text"
    }

}

この場合、デバッガーは次の行をスローしますmiTexto.text = "changed text" :

 [Fault] exception, information=TypeError: Error #1009: Cannot access a property or method of a null object reference

前もって感謝します。

4

1 に答える 1

0

するのを忘れましたか: addChild(miTextTo); ?

于 2012-06-17T22:36:10.820 に答える