スキップメニュー:コンテンツへナビゲーションへ

乱雑モックアップ   らんざつ[乱雑] (名・形動)[文]ナリ 入り乱れていること。乱れていて秩序がないこと。また、そのさま。

電話は呼出し音が終わって、相手が出てからしゃべりましょうということです。

2009年 7月 22日 |

as3, flash |

このエントリをはてなブックマークに追加このエントリをdel.icio.usに追加このエントリをLivedoor Clipに追加このエントリーのブックマーク数

簡単に画像を更新できるslideshowをflashで作ろうと思い、仕様を考える。

  • 外部から画像を読み込む
  • 読み込む画像の枚数をflaを開かずに変更できる

as1時代に作ったのは、外部テキストに画像のurlと最大枚数を書いておいて表示させるといったモノ。
今回はせっかくなのでxmlを使ってみよう、xml有名だもんね、xml使うメリットとかデメリットとかそもそもxmlて何なの?って全くわかってないけど。

以下のxmlを用意した

<?xml version="1.0" encoding="utf-8"?>
<slideshow>
	<photo>
		<photourl>1.jpg</photourl>
		<photocaption>1枚目</photocaption>
	</photo>
	<photo>
		<photourl>2.jpg</photourl>
		<photocaption>2枚目</photocaption>
	</photo>
	<photo>
		<photourl>3.jpg</photourl>
		<photocaption>3枚目</photocaption>
	</photo>
	<photo>
		<photourl>4.jpg</photourl>
		<photocaption>4枚目</photocaption>
	</photo>
	<photo>
		<photourl>5.jpg</photourl>
		<photocaption>5枚目</photocaption>
	</photo>
</slideshow>

asはカヤックの記事を参考に書いてみる。

var pathXml:String="photo.xml";

var url_list:Array=[];
var caption_list:Array=[];

var url:URLRequest=new URLRequest(pathXml);
var url_loader:URLLoader=new URLLoader(url);

// 読み込み完了時に呼び出されるイベント
url_loader.addEventListener(Event.COMPLETE,loadComplete);
function loadComplete(event : Event) {
	trace("電話の相手が出ました");
	var xml:XML=new XML(url_loader.data);
	//trace(xml);
	//xmlからターゲットのパスを指定する
	for each (var element:Object in xml.photo) {
		url_list.push(element.photourl);
		caption_list.push(element.photocaption);
		//_txt.text=url_list.toString();
	}
	slideshowplay();
}
trace("受話器に向かってしゃべりました");
function slideshowplay() {
	trace("もう一度受話器に向かってしゃべりました");
	_txt.text=url_list.toString();
}

ここで躓いたのが
loadComplete内からしか配列を参照できなかった、ってこと。
(よく考えたら当たり前だし、以前の外部テキストを読み込む時も読み込みが完了した時に処理用の関数を呼び出してたのにすっかり忘れてる)
検索してみると、mixiで同じように躓いてる人の質問を発見

http://mixi.jp/view_bbs.pl?id=42643514&comm_id=580&page=all

11-16あたりの流れ

電話は呼出し音が終わって、相手が出てからしゃべりましょうということです。

FLASH-japan「外部XMLを配列化したときにonLoadの外で変数が反映されません」

http://www.flash-jp.com/modules/newbb/viewtopic.php?viewmode=flat&topic_id=3946&forum=6

今回はフレーム移動ではなく、function oadComplete内からfunction slideshowplayを呼び出してみる事にします。


コメントはまだありません »

コメントはまだありません。

この投稿へのコメントの RSS フィード。 TrackBack URL

コメントする

You can add images to your comment by clicking here.




Back to Top↑

あわせて読みたい

Back to Top↑

RSS 乱雑モックアップのフィード

Copyright © 乱雑モックアップ. All Rights Reserved.