我能够在屏幕上显示地图并获得纬度和经度的当前位置。然而,我想在这些纬度和经度值的位置显示一个标记。我试过在渲染地图时添加一个监听器。下面是代码。但是屏幕上没有出现标记。任何关于如何使标记显示在当前位置的指示都将非常有帮助。
<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 ({名称:"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!');
}
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
});
}
这个map键也很重要,你需要确保你在数组中有标记,以备将来使用