2008/12/11

ActionScriptでXMLファイルを読み込んで表示する その2

今日はActionScript学習の2日目で、簡易RSSリーダー的に近づいてきました。XMLから日付とタイトルと内容のデータを取って来て、日付とタイトルをクリックすると内容が表示され、もう一回クリックすると元に戻るようになっています。

//XPathAPIを使用しやすいようにインポートする
import mx.xpath.XPathAPI

var myXML:XML = new XML(); //新規XMLインスタンスの生成
myXML.ignoreWhite = true; //空白を削除して読み込む
//イベントハンドラ・メソッドの定義
myXML.onLoad = function() {
var TitleList:Array;
var DateList:Array;
var ContentList:Array;
var TitlePath:String = "/feed/entry/title/*";
TitleList = XPathAPI.selectNodeList(this.firstChild, TitlePath);
var DatePath:String = "/feed/entry/published/*";
DateList = XPathAPI.selectNodeList(this.firstChild, DatePath);
var ContentPath:String = "/feed/entry/summary/*";
ContentList = XPathAPI.selectNodeList(this.firstChild, ContentPath);
for (var i:Number = 0 ; i<5;i++){
var headline:TextField = _root.createTextField("head"+i,i, 10, 0, 500, 80);
headline.background = true;
headline.backgroundColor = 0xffffff;
headline.text += DateList[i] + "n" + TitleList[i] + "n";
headline._y = 60*i;
headline.i = i;
headline.onSetFocus = function(){
var headline_zoom:TextField = _root.createTextField("zoom",10+i, 10, 0, 500, 500);
headline_zoom.background = true;
headline_zoom.text = ContentList[this.i];
headline_zoom.backgroundColor = 0xffffff;
headline_zoom.onSetFocus = function() {
headline_zoom.removeTextField();
}
}
}
}

myXML.load("atom.xml"); //XMLファイルを読み込み

行き詰まってたことがあったのですが、FLASH-JPで質問させていただいたところ即答いただき解決。ネットって素敵です。

これで見栄えよくしたら、サイトの更新情報ページなどに使えるんではないかと。

加藤 康祐 / 企画・設計

プランナー、デザイナー。加藤康祐企画設計代表。Webデザインを入り口に、2005年よりフリーランスとしてのキャリアスタート。主な仕事としてベンチャー企業でのサービスのUXデザイン、独法との防災メディアの運営、社会的養護の子どもたちの自立を支援するNPOのサポート。ラグビーと料理、最近イラスト。

加藤康祐企画設計

是非、フォローしてください!
Twitter / Instagram

(2012-10-5)
売り上げランキング: 14,705
100円