如何使用gwt禁用streetview?

时间:2013-09-20 09:39:30

标签: google-maps gwt

有一个“人物”图标,允许用户查看“街景”。我不想在我的地图上使用此功能,有没有办法删除它或禁用它?我没有使用JavaScript我正在使用GWT。

Google-Maps v3正在使用。

private void initMap() {
        mapVp.setSize(String.valueOf(BodyPanel.bodyWidth - 505),
                String.valueOf(BodyPanel.bodyHeight + 5));
        LatLng myLatLng = LatLng.create(24.440099, 46.843498);
        final MapOptions myOptions = MapOptions.create();
        myOptions.setZoom(5);
        myOptions.setCenter(myLatLng);
        setStreetViewControl(myOptions.getJso(), false); //Added now
        myOptions.setMapTypeId(MapTypeId.ROADMAP);
        myOptions.setMapTypeControl(true);
        Timer load = new Timer() {

            @Override
            public void run() {
                map = GoogleMap.create(mapVp.getElement(), myOptions);
                hPanel.add(LoginDashboardModule
                        .mapLegends(map, "Live Tracking"));
            }
        };
        load.schedule(1000);        
    }

这是我的代码 添加此行setStreetViewControl(myOptions.getJso(),false)后出现错误;

3 个答案:

答案 0 :(得分:4)

我刚用下面的一行并得到了输出。

myOptions.setStreetViewControl(假);

答案 1 :(得分:2)

您可以使用JSNI执行此操作。

public static MapWidget createMapWidget(double lat, double lng,
        final String width, final String height, int zoomLevel) {
    // Set the options of the map widget.
    MapOptions options = new MapOptions();
    options.setZoom(zoomLevel);
    options.setMapTypeId(new MapTypeId().getRoadmap());
    setStreetViewControl(options.getJso(), false);
    options.setCenter(new LatLng(lat, lng));

    /* The map widget */
    final MapWidget mapWidget = new MapWidget(options);
    mapWidget.setWidth(width);
    mapWidget.setHeight(height);
    return mapWidget;
}

public static native void setStreetViewControl(JavaScriptObject obj,
        boolean control) /*-{
    if (obj)
        obj.streetViewControl = control;
}-*/;

答案 2 :(得分:1)

您可以在JavaScript API中通过将 streetViewControl 设置为 false 来执行此操作。所以我假设GWT包装器确实提供了类似的选项。