トリアエズぶろぐ
フリーランスでやってる77世代のWEBプログラマが福岡からのんびりとお送りいたします。
スポンサーサイト


一定期間更新がないため広告を表示しています

<< 超簡単!楽天アフィリエイトツール【楽天ランクレット】リリースしました | main | iPhone画像から位置情報をぶっこぬいてマッピングするSNAKERSをリリース >>
Flash AS3.0事始め。スライドショーを作ってみた



いままで納期・時間の問題とかであえて避けてきたActionScript3.0。
やっと重い腰を上げてスライドショーなんぞ作ってみましたよ。

ポイントは6つ。
  1. 外部asファイルで書いてみたい
  2. 外部XMLのロード
  3. 外部画像のロード
  4. 画像を滑らかにスクロールしたい
  5. 画像を光る感じでスライドしたい
  6. メモリリークに気をつける


1.外部asファイルで書いてみたい

Flashインターフェースの「ドキュメントクラス」を使って、すべて外部asに書きたいなーと思ってた。
Javaライクな書き方に少々敷居を感じてたけど、昔iアプリとかのJava(もどき)を書いてたのでなんとかすんなりと。
どこまでをFunctionにするか、どこまでをClassにするかのポイントはまだよくわかんない。
美しい書き方のセオリーとかないのかなぁ。


2.外部XMLのロード

blog.alumican.net » Blog Archive » Shift-JISやEUC-JPのXMLを読み込むSimpleXMLLoaderクラス
を利用させて頂きました。感謝。
こういう便利クラスのソースを眺めると参考になりますね。


3.外部画像のロード

feb19.jp blog - AS3で読み込んだ外部画像にスムージングを適用する
を参考にさせていただきました。感謝。


4.画像を滑らかにスクロールしたい

これははまった。
3.を参考にbmp.smoothing = trueとかしても、なんだかカクカクすることがあったんです。
結局
myCanvas.addChild(new Bitmap(Bitmap(imgLoader.content).bitmapData, PixelSnapping.NEVER, true));
myCanvas.stage.quality = StageQuality.BEST;
のようにPixelSnappingを設定、さらに
myCanvas.widthとmyCanvas.heightを原寸以外に設定すると滑らかに動くようになりました。

あと、Timerって初めて使ったんだけど超便利ね。
Completeイベントとか使い勝手◎。


5.画像を光る感じでスライドしたい

これは簡単。
ステージ上に白く塗ったムービークリップを画像の上のレイヤーに置いて、
カラー:アルファ
ブレンド:加算
にしておく。
あとはスクリプトからアルファの値をいじるだけ。


6.メモリリークに気をつける

trace("MemoryUsage : "+Math.round(System.totalMemory/1024)+"KByte");
とか書いてみると、画像を読むたびに使用メモリがどんどん増えていく!
メモリ開放のポイントはまだはっきりつかめてないけど、とにかく
removeEventListenerしたり
imgLoader.unload();したり、気をつけるといいみたい。

AS3に限ったことじゃないかもしれないけど、メモリ状況はちゃんとチェックしないとちょっと怖い。



てな感じで出来上がりました。
その他は同じFlashを小さく表示しても文字の大きさをなるべく変えないとか、ちょっとした所に手を加えたり。


これはつなビィの新しいブログパーツにする予定。

オブジェクト指向をもうちょっと勉強しないと、効率的なクラスの分け方とかがまだわかんないなー。
のんびり勉強します!
スポンサーサイト


スライドショーとてもステキです!

ついでにブログテンプレートももう少し増やしていただけると嬉しいです・・・・!
ブログパーツくらいページレイアウトしやすいデザインだと幸せです。
| 2009/11/08 03:37
コメントありがとうございます!
ブログテンプレートは色々と思案中です。。。
特に、携帯画面のデザインが少し自由に出来ると楽しいかな、と思ってます。
akihiro | 2009/11/10 17:16
初めまして。
Jugemkeyで新規登録した者なのですが、退会が出来ません。
JUGEMも退会してしまいました。

消して貰う事って出来ますか?
因みにhttp://glitteribbon.tuna.be/です。
み | 2010/01/18 18:21
初めまして。
通りすがりの者です。突然で申し訳ないです。
単刀直入に出来ればの話なのですが、このスライドショーのソースファイルを頂けませんでしょうか?

というのも、as3を日々勉強してる者でもあるのですが、なかなかいい教材が見当たらず、困っていました。

差し支えなければですが、勝手ながらもよろしくお願いします。
コメントから失礼しました。
通りすがりの者です。 | 2010/01/28 14:17
最近つなビィを知り。
ブログパーツとしてスライドショーを利用させて
いただいているのですが。キレイに表示されて
友達にもいいね。といわれてます^^。
画像サイズを自由にかえれるところや
サイズの違う画像でも適当なサイズで表示して
くださるとこと。とにかくおきにいりです!

1つだけ。贅沢を言わせていただけるなら
日付。タイトル。の ある。なし。の選択が
あればうれしいです。
つなビィはブログとしてではなく
ブログパーツとして
今は使わせていただいていますので。
日にちがないほうが麗しいと思えまして。
わがまますいません。

ではでは。素敵なプログラムをありがとうございます。
これからの更新。楽しみにしています!
でいじー。 | 2010/02/17 00:40
初めまして。
まだAS3を始めたばかりで、とても参考になります!!
やりたかったスライドショー、そのままです!!
でも、どうしてもうまくいきません。。。
失礼だと重々承知ですが、ソースを教えていただけないでしょうか。
どうやったらこんな素敵なスライドショーができるかわかりません。。
誠に勝手ながら、どうかお願いします。
困り果てて | 2010/03/31 19:05
はじめまして、TAKAと申します。
ActionScript3.0を勉強しています。
独学で学んでいるため、なかなか上達できません。

そんな中、会社で貴殿の作成されたスライドショー
と同様のものを作成しなくてはならなくなり、参考に
なるサンプルを探しておりました。

貴殿の作成されたものに、ボタンを加え、そのとき
スタイドしている画像の詳細画面(静止画面)に遷移させるなど、私にとってはかなりハイレベル・・・
でもスキルアップのためには良いかと思っています。
そこで大変失礼なことと思うのですが、
ソースをいただくことはできないでしょうか?

以上、よろしくお願い致します。
taka | 2010/04/01 15:08
はじめましてtakaです。

スライドショーを拝見させていただきました
私もこちらのようなものが作成したく試行錯誤
しておりました。

もしご迷惑でなければ、ソースを拝見させて
いただけないでしょうか?

勝手ではありますが、勉強させていただければ
幸いです。

何卒よろしくお願い致します。
taka | 2010/05/12 21:00
こんにちは.最近AS3.0について勉強をはじめて,こちらに来ました.
少し助言できることがあったのでコメントさせて頂きます.

>> どこまでをFunctionにするか、どこまでをClassにするかのポイントはまだよくわかんない。
>> 美しい書き方のセオリーとかないのかなぁ。
との事ですが,「デザインパターン」と呼ばれるオブジェクトの構成のパターンがあります.
詳細は検索してみてください.
AknEp | 2010/12/12 20:06
COMMENT









Trackback URL
http://akihiro.jugem.jp/trackback/265
TRACKBACK