xFrameworkFX 0.0.1 alpha

2日ほど、業務に押され何も記事かけませんでした、小堤です。

さて、一応ローディングが作れるぞ!という部分までフレームワーク(xFrameworkFX)を作成しました。ので、約束通り公開いたします。

xFrameworkFX var 0.0.1 alpha

で、ただ公開するだけでは何なので、一応ローディングを作成するための説明を。
というか、後でまとめるための草稿なんですけどね。

サンプルのSWFは2フレーム目に画像いれてあるのですが、ローカルだと一瞬で100%になると思うので、FLAで再生する際にCTRL+ENTERもう一回押してあげてダウンロードのシミュレートをオンにして実行してください。確認できます。

先に前提条件として、classesのnetディレクトリ以降が クラスパスとして通してある前提です。(当たり前か)

サンプルが内包されていると思います。

FXDemo\ui\loading\Loading.as がローディングムービークリップオブジェクトのクラスになります。

このクラスはnet.xFramework.ui.loading.UILoading を継承しています。ローディングを作成する際は、このクラスを継承してください。

その他必要なimportは下記の通りです。

  • import flash.display.MovieClip;
  • import net.xFramework.ui.loading.UILoading;
  • import flash.events.Event;
  • import flash.events.ProgressEvent;
  • import flash.text.TextField;

このクラスは

  • onInit(初期化)
  • onProgress(読み込み中)
  • onComplate(読み込み完了)

というメソッドが実装されており、かつ自動的にコールされるようになっています。ですので、自身で継承して利用する場合はオーバーライドしてメソッドを作成してください。ちなみに親クラスのメソッドでは、何の処理もしていないためsuperをわざわざ自身のメソッド内に記述する必要はありません。

あとは、FLA内で、リンケージ設定で

  • クラス名:FXDemo.ui.loading.Loading
  • 基本クラス:flash.display.MovieClip

として、完了です。

これでローディングMC自体の設定は終わりです。

親クラスのプロパティとして

  • nBytesTotal
  • nBytesLoaded
  • nPercent

が設定されていて、かつ自動的に更新されます。ですので、onProgressなどのイベントハンドラで各値を使って、自身のローディングアニメーションに反映してください。

最後に、この設定をして終わりです。

FXDemo.display.MainDocumentクラスをみてください。 こいつは、net.xFramework.display.Documentを継承しています。

必要なインポートは下記の通りです。

  • import net.xFramework.display.Document;
  • import net.xFramework.events.ControllerEvent;
  • import FXDemo.ui.loading.Loading;

このクラスFLAで、ドキュメントクラスとして設定してください。

このクラスのコンストラクタで、先ほどのローディングクラスをthis.mcLoadingに対してインスタンス化します。

これで、ローディングの骨組みができました。終わりです。

あとは、ローディングクラスのイベントハンドラで自身のアニメーションを制御してください。

長くなりましたが、これ以外にXMLよるローディングの表示位置が設定できます、また、xFramewrokFX内の各クラスについての説明も追々やっていこうと思っています。

たいしたものではないので、あれなんですが・・・感想くれるとうれしいです(笑)

xFrameworkFX 0.0.1 alpha

コメントを残す