0

RIA で一般的な「従来の」スライド バーとは異なるカスタム プリローダーを構築しています。プリローダーは一直線に並んだ100個の白色レーザー光を使用し、まとめてプログレスバーを表示します。質問する前に、これがどのように機能するかを説明しましょう。

................. .......,,,,,,,,::::::::::::::::: ::::::::BBBBBBBBなど...

上記の文字列は、プリローダー インジケーターの精神を捉えています。この図では、キャラクターが大きくて太っているほど、実際のプリローダーのレーザー光が明るくなります。

  1. 右端のレーザーは、現在ロードされているパーセンテージを示します。これは、最も明るいレーザー光でもあります。
  2. 他のすべての後続レーザーは、完全に黒くなるまで次第に暗くなり、まるで画面の後ろで全体を燃やしたかのようになります.

ステップ「2」は、ややこしいところです。何らかの理由で、いくつかのランダムなレーザーを除いて、試行中のレーザーは暗くなりません。以下は、ドットの明るさ (または、私が使用したアルファ プロパティ) を制御するコードのスニペットです。

... more code ...

//Build the dots according the configuration and load status parameters
  private function buildDots(x:int, y:int):void {
  //Draw the dot, details not shown
    var dot:Shape = new Shape();

  //Begin the transitioning
    this.fadeOn(dot);
  }

//Fade a dot to full brightness
  private function fadeOn(dot:Shape):void {
    var fadeOn:Tween = new Tween(dot, "alpha", None.easeNone, 0, 1, this.fadeOnTime, true);

      fadeOn.addEventListener(TweenEvent.MOTION_FINISH, fadeOff);
  }

//Fade a dot to black
  private function fadeOff(e:TweenEvent):void {
    var fadeOff:Tween = new Tween(e.target.obj, "alpha", None.easeNone, 1, .2, this.fadeOffTime, true);
  }

... more code ...

誰かが私が間違っているところを教えてもらえますか? これらの詳細が役立つ場合があります。

  1. このプリローダー全体がカスタム クラス内にあります。
  2. レーザー ライトは、ライブラリにアクセスせずに、コードによって完全に作成されます。

詳細を提供できる場合はお知らせください。良い回答/フィードバックには、できるだけ多くのポイントを与えます。

いつもありがとうございます!

4

2 に答える 2

1

私が見ているのは組み込み関数です。

Greensock の強力な TweenMax クラスを使用して再コーディングします。http://www.greensock.com/tweenmax/

于 2011-06-02T21:26:51.427 に答える
0

私が見ている唯一のことは、fadeOn変数からイベントリスナーを削除していないことです。それが私が最初にチェックすることです-トゥイーンについてはあまり知りませんが、イベントリスナーが変数「fadeOn」を参照しているため、変数「fadeOn」が必要以上に長く存在することは知っています.

ただし、さらにコードを投稿する必要があるかもしれません。おそらく、トゥイーンの経験が豊富な人がもう少し光を当てることができます.

于 2011-06-02T04:27:59.623 に答える