ライブラリに読み込んだサウンドを再生/停止するサンプルです。
サウンドを再生するにはSoundクラスのplay()メソッド、停止するにはSoundChannelクラスのstop()メソッドを使います。
プログラミングやテクニカルな内容の覚え書き。
ライブラリに読み込んだサウンドを再生/停止するサンプルです。
サウンドを再生するにはSoundクラスのplay()メソッド、停止するにはSoundChannelクラスのstop()メソッドを使います。
2012/08/21
category: Flash | tag: ActionScript, ANE, iOS | no comments
現在Flashで製作中のiPhoneアプリでは、BGMを流そうとしています。
BGM自体は鳴らすことはできたのですが、iPhoneの着信/サイレントスイッチの状態が反映されないことに気が付きました(夜中にサイレントモードにしてアプリを動かしたら、大きな音でBGMが鳴り始めてビックリしました…)。
どうやら、現バージョンのAIRランタイムでは、着信/サイレントスイッチの動作はサポートされていないようです(2012.8.21現在、手元のFlashCS6ではAIR3.2)。
ActionScriptのみで、タイムラインと同等の動きを作るには、どうすればいいのか?を知るための実験。
タイムラインにムービークリップを配置した時、インスタンス名(変数)の定義の状態や中身がどうなるのかを調べてみました。
オブジェクトのクラス名を取得するgetQualifiedClassName()関数を使ったサンプル。
何かしらのトリガーで、メッセージとボタンを備えたダイアログボックス(のようなもの)を表示させるサンプル。
オブジェクトが階層化されていると、子から親にイベントが伝播されます。
子オブジェクトのみでイベントを止めたい場合には、EventクラスのstopPropagation()メソッドを使います。
ゲームなどのスコアーを表示する時に、自分でデザインした字を使って数を表示したいことがあります。
0から9までの数字画像を作って、数を画像で表示する方法を試してみました。
1桁の数を表示するムービークリップを作成します。
表示オブジェクトコンテナに追加した後からオブジェクトの重なり順を変更する方法。
DisplayObjectContainerクラスのメソッドを使用して実現します。
重なり順を変更したい子オブジェクトのインデックスを指定します。インデックスが適切な範囲内にないとエラーが発生するので、numChildrenプロパティ(コンテナの子の数)などを参照して適切なインデックスを指定する必要があります。コンテナに含まれる他の子オブジェクトのインデックスは、自動的に前後の値に調整されます。
ちなみに、子オブジェクトのインデックスを取得するにはgetChildIndex()メソッドを使用します。
this.setChildIndex(mc, 2);
コンテナ(this)に含まれる子オブジェクト(mc)のインデックスを2に設定する。