1

画面に地図を表示して、緯度と経度の現在位置を取得することができます。ただし、これらの緯度と経度の値の位置にマーカーを表示したいと思います。マップがレンダリングされるときにリスナーを追加してみました。以下はコードです。ただし、画面にマーカーは表示されません。現在の位置にマーカーを表示する方法についてのポインタは、非常に役立ちます。

<script src="http://maps.googleapis.com/maps/api/js?sensor=true"></script>
<link href="touch/resources/css/sencha-touch.css" rel="stylesheet" type="text/css" /> 

<script type="text/javascript">     

Ext.application({name:'MapApp'、

launch: function() {
var lat,lng;

//get latitude and longititude values

Ext.device.Geolocation.getCurrentPosition({
success: function(position) {
    lat = position.coords.latitude;

    lng = position.coords.longitude;
    alert(lat);
    alert(lng);
     Ext.Viewport.add( {
        xtype:'map',
        useCurrentLocation:true,
        fullscreen: true,
        layout:'fit',
        listeners : {
        maprender : function() {
            alert('map rendered');
            var marker = new google.maps.Marker({
            position: new google.maps.LatLng(lat,lng),
            title : 'testing',

            });
        }
    }

    });
},
failure: function() {
    alert('something went wrong!');
}
4

1 に答える 1

2
maprender : function(map, gmap, options) {
            alert('map rendered');
            var marker = new google.maps.Marker({
                position: new google.maps.LatLng(lat,lng),
                title : 'testing',
                map: //gmap or map, try both one of them will work
            });
            }

このマップキーは重要です。また、将来使用するために配列内のマーカーを確実に保存する必要があります。

于 2013-03-11T09:15:25.913 に答える