Google maps 显示我在sencha touch中的当前位置
我正在做一个小的sencha项目。我正在尝试添加两张地图。第二张地图应该显示我的位置。在第二张地图上,我试图显示我的位置-Google maps 显示我在sencha touch中的当前位置,google-maps,sencha-touch,Google Maps,Sencha Touch,我正在做一个小的sencha项目。我正在尝试添加两张地图。第二张地图应该显示我的位置。在第二张地图上,我试图显示我的位置- useCurrentLocation: true, 这是我的密码。它没有显示我目前的职位。第一张地图很好用 我做错了什么 Ext.define('WhatsUnderMe.view.Main', { extend: 'Ext.tab.Panel', xtype: 'main', requires: [ 'Ext.TitleBar', 'Ext.Video', 'Ext.M
useCurrentLocation: true,
这是我的密码。它没有显示我目前的职位。第一张地图很好用
我做错了什么
Ext.define('WhatsUnderMe.view.Main', {
extend: 'Ext.tab.Panel',
xtype: 'main',
requires: [
'Ext.TitleBar',
'Ext.Video',
'Ext.Map',
'Ext.util.GeoLocation',
],
config: {
tabBarPosition: 'bottom',
items: [
{
xtype: 'map',
useCurrentLocation: true,
title: 'My Position',
iconCls: 'home',
mapOptions:{
zoom: 16,
mapTypeId: google.maps.MapTypeId.SATELLITE
},
},
{
xtype: 'map',
title: 'Under Me',
iconCls: 'star',
mapOptions:{
zoom: 15,
center: new google.maps.LatLng(lat, lng),
mapTypeId: google.maps.MapTypeId.SATELLITE
},
}
]
},
});
var lat, lng;
var position;
var geoLocationOptions = { maximumAge: 3000, timeout: 5000, enableHighAccuracy: true };
navigator.geolocation.getCurrentPosition(geoLocationSuccess,geoLocationError,geoLocationOptions);
function geoLocationSuccess(position) {
lat = position.coords.latitude;
lng = position.coords.longitude;
}
function geoLocationError() {
Ext.Msg.alert('Error','Error while getting location');
}
这样的办法应该行得通。只需确保将代码中的yourMapInstance更改为google地图的变量
Ext.device.Geolocation.getCurrentPosition({
allowHighAccuracy: true,
maximumAge: 0,
success: function(position) {
var lat = position.coords.latitude,
lon = position.coords.longitude;
var userLocation = new google.maps.LatLng(lat,lon);
var userLocationMarker = new google.maps.Marker({
position: userLocation,
map: yourMapInstance,
clickable: false
});
yourMapInstance.setCenter(userLocation);
},
failure: function() {
Ext.Msg.alert('Argh','Can\'t Find You!');
}
});