forked from: flash on 2009-5-19

by yd_niku forked from flash on 2009-5-19 (diff: 23)
xmlを読み込むテスト
♥0 | Line 29 | Modified 2009-05-20 09:25:58 | MIT License
play

ActionScript3 source code

/**
 * Copyright yd_niku ( http://wonderfl.net/user/yd_niku )
 * MIT License ( http://www.opensource.org/licenses/mit-license.php )
 * Downloaded from: http://wonderfl.net/c/4sIk
 */

// forked from gurumi's flash on 2009-5-19
//xmlを読み込むテスト

package {
    import flash.display.*;
    import flash.text.*;
    import flash.events.*;
    import flash.net.*;
    
    public class xmlTest extends Sprite
    {
        private var xmlLoader:URLLoader;
        private var tf:TextField;

        public function xmlTest()
        {
            tf = new TextField();
            tf.text = "weather";
            tf.width = stage.stageWidth;
            tf.height= stage.stageHeight;
            addChild(tf);
            
            // crossdomain.xml があるサイトからとればいい
            // http://level0.kayac.com/crossdomain.xml
            var requset:URLRequest = new URLRequest("http://level0.kayac.com/atom.xml");
            
            // crossdomain.xmlで許可されてないドメインからのリクエストはSecurity Errorがでる
            // http://rss.weather.yahoo.co.jp/crossdomain.xml
            //var requset:URLRequest = new URLRequest("http://rss.weather.yahoo.co.jp/rss/days/4410.xml");
            
            xmlLoader = new URLLoader();
            xmlLoader.load(requset);
            xmlLoader.addEventListener(Event.COMPLETE, completeHandler);
        }
        
        private function completeHandler(event:Event):void {
            var loader:URLLoader = URLLoader(event.target);
            var xmlData :XML= new XML( loader.data );
            // namespaceがついてるので取得
            var ns:Namespace = new Namespace( xmlData.namespaceDeclarations()[0]);
           
            // namespaceつきで要素にアクセス
            tf.text = xmlData.ns::title;
            
            // Namespaceについてはこの辺とか読むといいかも
            //http://d.hatena.ne.jp/Kishi/20070628/1183033689
        }
    }
}

Forked