将谷歌地图集中在商店的点 - Sencha Touch 2

时间:2013-09-18 11:35:51

标签: extjs sencha-touch sencha-touch-2

我在视图中有一个Google地图组件,我希望动态设置其中心。它位于详细信息样式页面上,因此数据在加载时会传递给它,因此在启动函数中设置中心将是首选。我在尝试引用地图时遇到一系列未定义的错误,并且使用Google Maps setCenter()函数在定位Sencha地图组件时不起作用。我很确定使用setCenter是实现此目的的最佳方法,但我似乎无法定位并执行它。

对此提出任何建议都会很棒,提前谢谢:

映射代码(Ext.Container中的项目):

       {
             xtype: 'map',
             height: 150,
             itemId: 'map',
             width: '100%',
             mapOptions : {
                zoom : 12,
                mapTypeId : google.maps.MapTypeId.ROADMAP,
                navigationControl: true,
                navigationControlOptions: {
                    style: google.maps.NavigationControlStyle.DEFAULT
                }
             } 
        }

1 个答案:

答案 0 :(得分:1)

使用提供的setMapCenter方法。

您可以使用component query获取对地图的引用。如果你真的不能这样做,请给它id并使用Ext.getCmp(yourId)(不推荐)。

在执行此操作之前,请务必实际渲染地图(将更新逻辑放在maprender侦听器中)。

yourContainer.down('#map').setMapCenter({latitude, longitude});
相关问题