[Titanium]XMLを処理するサンプル

2011/11/22 | 開発記録 | admin

少しずつ、pochitter.comで使っているコードを晒していこうかと思います。
ツッコミ歓迎。

緯度経度を受け取って、
Yahoo WEB API リバースジオコーダに流して、
http://developer.yahoo.co.jp/webapi/map/openlocalplatform/v1/reversegeocoder.html
都道府県と市区町村だけ抜き出して返す。
という関数のサンプルです。

はまったポイントはココ。

1
2
var todofuken = items.item(1).text;//都道府県
var sikuchoson = items.item(2).text;//市区町村

XMLの仕様かなんかで、item.text はもう決まってるみたい。
とりあえずこう書いたら、ストリングで取得できました。
全体は以下。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
var reverseGeoCoder = function(coords,callback){
    var lon = 'lon='+coords.longitude;//経度
    var lat = '&lat='+coords.latitude;//緯度
    var appid = '&appid=あなたのAPPIDを入力してください';
    var xhr = Ti.Network.createHTTPClient();
    xhr.timeout = 100000;
    xhr.onload = function(){
        var doc = this.responseXML.documentElement;
        var items = doc.getElementsByTagName("Name");
        if(items.item(1) && items.item(2)){
            var todofuken = items.item(1).text;//都道府県
            var sikuchoson = items.item(2).text;//市区町村
            var adress = [todofuken, sikuchoson];
            callback(adress);
        }else{
            callback(null);
        }
    };
    xhr.send();
};

Mac OS X v10.6 Snow Leopard
Titanium Mobile 1.7.5
Xcode 4.2 for Snow Leopard

前の記事:

次の記事:

2011/11/22 | 開発記録

コメント/トラックバック

トラックバック用URL:

この投稿のコメント・トラックバックRSS




管理人にのみ公開されます

前の記事:

次の記事:

【二種免許】深視力検査合格のコツや裏技
【二種免許】深視力検査合格のコツや裏技

東京では免許更新の際、ゴールド免許の方や島嶼にお住まいの方以外は、鮫洲...

no image
[cakephp4] dirtyとoriginal

patchEntityすると、変更したところと、変更前の内容が取れる。...

BaserTestCaseで特定プラグインの有無でfixturesを振り分ける
BaserTestCaseで特定プラグインの有無でfixturesを振り分ける

baserCMSのTestCaseで、特定のプラグインの有無を調べて、...

kusanagi で letsencryptが更新されない
kusanagi で letsencryptが更新されない

結論から、アパッチを直接再起動すると直るかも。 systemctl r...

baserCMS プラグインのアップデートスクリプト
baserCMS プラグインのアップデートスクリプト

(参考) http://project.e-catchup.jp/pr...

→もっと見る

S