0

我编写了一个在地图上显示当前位置的应用程序。问题是它适用于 Galaxy Tab 10.1、HTC Desire、Desire Z、Galaxy S 但是当我使用三星 Galaxy Ace 或带有 Android 2.3.3 的模拟器时它不起作用 - 只显示灰屏。

代码:

Ext.define('MyApp.view.WhereAmI', {
extend: 'Ext.Container',
xtype: 'whereAmI',

config: {
    layout: 'fit',
    scrollable: true,
    styleHtmlContent: true,
    style: 'text-align: center; background-color:white;',

    items: 
    [
        {
            xtype: 'toolbar',
            docked: 'top',
            title: 'Where am I?',
            items: [
                {
                    ui: 'back',
                    xtype: 'button',
                    id: 'back',
                    text: 'Back'
                }
            ]       
        },
        {
            xtype: 'mapview'
        }
    ]
}
});

地图视图:

Ext.define("MyApp.view.MapView", {
    extend: "Ext.Map",
    xtype: 'mapview',
    config: {
        useCurrentLocation: true,
        mapOptions:{
            zoom: 14,
        },
        listeners: {
            maprender : function(comp, map){
                new google.maps.Marker({
                    position: new google.maps.LatLng(this._geo.getLatitude(), this._geo.getLongitude()),
                    map: map
                });                 
            },
        }
    },
})

当然在 index.html 中:

<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=true"></script>

有没有可能让它工作?

4

1 回答 1

1

我找到了解决方案。

问题出在设备设置中。

Settings -> Location and security -> My location -> Use wireless networks 

在我的设备上未选中。检查时它可以工作。

于 2012-07-26T11:40:07.773 回答