0

GreenSock を使用して、iOS 用の Flash AS3、AIR 3.2 でこれを機能させようとしています。変数、関数などとして定義しようとしましたが、役に立ちませんでした。オンラインで検索しても何もヒットしません。

コード行に対して次のエラーが表示されますTweenMax tween = TweenMax.to(textOne, 14, {x:xScreenPosEnd, ease:SlowMo.ease.config(1, 0), repeat:-1});

1071: 構文エラー: tween ではなく、属性 TweenMax の後に定義キーワード (関数など) が必要です。
1084: 構文エラー: 左中括弧の前に右中括弧が必要です。
1084: 構文エラー: 右括弧の前に識別子が必要です。

var middle:Boolean = false;

public function run():void {
    TweenMax tween = TweenMax.to(textOne, 14, {x:xScreenPosEnd, ease:SlowMo.ease.config(1, 0), repeat:-1});
    tween.addEventListener(TweenEvent.UPDATE, updateListener);
    tween.addEventListener(TweenEvent.REPEAT, repeatListener);
}

function updateListener(e:TweenEvent):void {
    if(tween.currentProgress > 0.5 && middle == false)
    {
        TweenMax.to(textOne, 7, {ease:SlowMo.ease.config(1, 0), repeat:-1, autoAlpha:0});
        middle = true;
    }
}

function repeatListener(e:TweenEvent):void {
    textOne.alpha = 1.0;
    middle = false;
}

編集: エラーの行は次のように置き換えられました。var tween:TweenMax = TweenMax.to(textOne, 14, {x:xScreenPosEnd, ease:SlowMo.ease.config(1, 0), repeat:-1});
さらに発生するエラーは次のとおりです:
1120: 未定義のプロパティ TweenMax へのアクセス。
1046: 型が見つからないか、コンパイル時の定数ではありません: TweenMax.
1120: 未定義のプロパティ tween へのアクセス。
1120: 未定義のプロパティ middle へのアクセス。

私の GreenSock のインポートは次のとおりです。

import com.greensock.easing.*;
import com.greensock.plugins.*;
import com.greensock.events.TweenEvent;

試してもimport com.greensock.*;

編集: 行を追加するとimport com.greensock.TweenMax;、エラーが削除されました:
1120: 未定義のプロパティ TweenMax へのアクセス。
1046: 型が見つからないか、コンパイル時の定数ではありません: TweenMax.

他の 2 つのエラーはまだ残っています。

4

1 に答える 1

1

@Vesperは絶対に正しいです。

var tween:TweenMax = TweenMax.to(...)

As3 は name:Type 表記を使用します。さらなるエラーについては、greensock コードを誤って参照したことが原因である可能性がありますが、正しい方向への一歩です。それらを編集して投稿してください。

わかりました見てみましょう:

private var _middle:Boolean = false;
private var _tween:TweenMax;

public function run():void {
    _tween = TweenMax.to(textOne, 14, {x:xScreenPosEnd, ease:SlowMo.ease.config(1, 0), repeat:-1});
    _tween.addEventListener(TweenEvent.UPDATE, updateListener);
    _tween.addEventListener(TweenEvent.REPEAT, repeatListener);
}

private function updateListener(e:TweenEvent):void {
    if(_tween.totalProgress() > 0.5 && _middle == false) {
        TweenMax.to(textOne, 7, {ease:SlowMo.ease.config(1, 0), repeat:-1, autoAlpha:0});
        _middle = true;
    }
}

private function repeatListener(e:TweenEvent):void {
    textOne.alpha = 1.0;
    _middle = false;
}

機能についてはよくわかりませんが、textOne実際に存在する場合、このコードはエラーをスローしないはずです。

于 2013-02-11T13:21:58.193 に答える