[ Titanium Mobile ] 現在位置を GPS で取得して地図にピンを立てて表示するサンプル #titaniumjp

スポンサードリンク

起動すると、現在位置を GPS で取得して地図にピンを立てて表示する Titanium Mobile のサンプルです。

サンプルコード

var win = Ti.UI.createWindow({title: 'Home'});

var mapview = Titanium.Map.createView({
    mapType: Titanium.Map.STANDARD_TYPE,
    // 地図の中心と表示する幅を指定する
    region:{latitude:40.0, longitude:130, latitudeDelta:30, longitudeDelta:30},
    animate:true,
    regionFit:true,
});
//mapview.hide(); // 一旦、隠す。
win.add(mapview);

// GPS の利用目的を表示。iOS 4 以降では必須。
Titanium.Geolocation.purpose = 'サンプル';

Titanium.Geolocation.getCurrentPosition(
    function(e) {
        if (!e.success || e.error){
            alert('位置情報が取得できませんでした');
            return;
        }

        latitude = e.coords.latitude;
        longitude = e.coords.longitude;

        // ピンを立てる
        var currentPos = Titanium.Map.createAnnotation({
            latitude:latitude,
            longitude:longitude,
            title:"現在地",
            pincolor:Titanium.Map.ANNOTATION_GREEN,
            animate:true
        });
        mapview.addAnnotation(currentPos);
        mapview.show(); // 隠していた地図を表示する
        mapview.setLocation({   // 現在地まで地図をスクロールする
            latitude:latitude,
            longitude:longitude,
            latitudeDelta:0.01,
            longitudeDelta:0.01
        });
    }
);

win.open();

現在位置とピンが若干ずれるんだけど何でだろ?

開発環境

  • Titanium Mobile SDK 1.7.5
  • iOS SDK 5.0

スポンサードリンク

この記事が気に入ったら、ぜひシェアをお願いします!

コメントを残す

メールアドレスが公開されることはありません。