在Sencha Touch中推送列表视图的每个详细视图的地图坐标

时间:2016-03-14 01:55:50

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

我正在使用Sencha Architect构建一个Sencha Touch应用程序,它包含一个列表视图,每个详细信息视图都是一个由各种只读数据字段组成的选项卡面板。到目前为止,我已经能够从列表中的每个对象传递记录,以显示在选项卡的表单字段中。现在,我正在尝试设置一个带有Google地图的标签,其中显示了一组经纬度坐标的位置,这些坐标与这些项目的记录一起存储。

有人可以告诉我如何传递这些值,以便对于对象的每个细节视图,此选项卡上的地图呈现在给定坐标的中心,并带有显示位置的标记?

如果有益,我可以提供当前代码。

非常感谢。

1 个答案:

答案 0 :(得分:0)

您只需创建一个地图面板并将其推送到容器即可。以下是示例。

var lat = record.get('lat'),
    lng = record.get('lng'),
    title = record.get('title');

var mapPanel = Ext.widget('map', {
    flex: 1,
    border: 1,
    useCurrentLocation: false,
    mapOptions: {
        center: new google.maps.LatLng (lat, lng),
        mapTypeId: google.maps.MapTypeId.ROADMAP,
        zoom: 15,
        marker: {title: title}
    },
    listeners: {
        maprender: function() {
            new google.maps.Marker({
                position: new google.maps.LatLng (lat, lng),
                animation: google.maps.Animation.DROP,
                map: this.getMap()
            });
        }
    }
});

// add the panel to the container.
container.add(mapPanel);