簡體   English   中英

如何使用MapModule獲取當前位置?

[英]How to get Current location using MapModule?

我正在嘗試獲取當前位置,但是我不知道正確的代碼,有人可以幫助我嗎? 這是我的代碼如下:

var MapModule = require('ti.map');

var vc = MapModule.createAnnotation({

 title: 'You are Here',
 //subtitle: 'Sao Paulo, SP',
 pincolor: MapModule.ANNOTATION_GREEN,
 image:"/ui/images/you.png",

});

var walmart = MapModule.createAnnotation({

 latitude: -23.474891,
 longitude: -46.526756,
 title: 'Wallmart',
 subtitle: 'Guarulhos, SP',
 pincolor: MapModule.ANNOTATION_RED,
 image:"/ui/images/buscador_walmart.png",

}); 

var mapview = MapModule.createView({

top:0,
height: "80%",
mapType: MapModule.NORMAL_TYPE,
region: {latitude: win.latitude, longitude: win.longitude,
        latitudeDelta: 0.001, longitudeDelta: 0.001},
annotations: [vc,walmart],
animate:true,

});

mapview.visible = false;

win.add(mapview);

我還將tiapp.xml中的NSLocationWhenInUseUsageDescriptionNSLocationAlwaysUsageDescription 放置在請求訪問位置的位置。

有人知道正確的代碼來獲取我的當前位置嗎?

您可以執行以下操作:

var onGetPositionError = function() {

    log('onGetPositionError');

    var lat = 52.3702157;
    var lon = 4.8951679;

    currentMapLat_ = lat;
    currentMapLon_ = lon;

    log('lat = ' +  lat + ' lon = ' + lon);

    $.mapView.setRegion({
        latitude: lat, longitude: lon,
        latitudeDelta: 0.005, longitudeDelta: 0.005
    });
};

var onGotPosition = function(e) {

    log('onGotPosition');

    var lon = e.coords.longitude;
    var lat = e.coords.latitude;

    currentMapLat_ = lat;
    currentMapLon_ = lon;

    log('lat = ' +  lat + ' lon = ' + lon);

    $.mapView.setRegion({
        latitude: lat, longitude: lon,
        latitudeDelta: 0.005, longitudeDelta: 0.005
    });
};

var getPosition = function() {
    Ti.Geolocation.getCurrentPosition(function(e) {
        if (e.error) {
            log(JSON.stringify(e));
            log('Cannot get current position');
            onGetPositionError();
            return;
        } else {
            onGotPosition(e);
            return;
        }
    });
};

$.locate.addEventListener('click', getPosition);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM