2

Googlemaps にGeoMap Spot と Legendを追加したい

My.view.xml:

        <l:FixFlex>
            <l:flexContent>
                <vk:MapContainer autoAdjustHeight="true">
                    <vk:content>
                        <vk:ContainerContent titile="test">
                            <vk:content>

                                <vbm:AnalyticMap id="map"></vbm:AnalyticMap>

                            </vk:content>
                        </vk:ContainerContent>
                    </vk:content>
                </vk:MapContainer>
            </l:flexContent>
        </l:FixFlex>

My.controller.js

    var mapDom = this.getView().byId("map").getDomRef();
    onAferRendering: function() {
       jQuery.sap.includeScript(
         "https://maps.googleapis.com/maps/api/js?key=XXX",
         null,
         function() {
           ...
           mainmap =new google.maps.Map(mapDom, mapProp);
    }
}

これは機能しており、Googlemap が正常に追加されました。

しかし、AnalyticMap に Spot を追加すると、googlemaps が表示されなくなりました。AnalyticMap と Spots のみが表示されます。

<l:FixFlex>
    <l:flexContent>
        <vk:MapContainer autoAdjustHeight="true">
            <vk:content>
                <vk:ContainerContent titile="test">
                    <vk:content>
                        <vbm:AnalyticMap id="map">
                            <vbm:vos>
                                <vbm:Spots items="{/Spots}" click="onClickItem" contextMenu="onContextMenuItem">
                                    <vbm:Spot position="{pos}" tooltip="{tooltip}" type="{type}" text="{text}" click="onClickSpot" contextMenu="onContextMenuSpot" />
                               </vbm:Spots>                                 
                            </vbm:vos>
                        </vbm:AnalyticMap>                      
                    </vk:content>
                </vk:ContainerContent>
            </vk:content>
        </vk:MapContainer>
    </l:flexContent>
</l:FixFlex>

Exploredでデモを使用しています

これら2つを組み合わせる方法は?Google マップのマーカーと GeoMap のスポットの両方を使用できますか?

マーカーのみを使用することを考えていましたが、マーカーにデータを書き込むことはできません (唯一の方法はマーカーのラベルを書き込むことです)。また、GeoMap の凡例も必要です。

4

3 に答える 3

0

両方のマップを重ね合わせているようです。それは成功へのレシピのようには聞こえません。アーティファクトが重なり合う順序によって何が表示され、何が表示されないかが決まるため、アーティファクトの可視性が失われることさえあります。

GeoMap コントロール (MapQuest) のデフォルトのマップ プロバイダーに満足できない場合は、Google を含む別のプロバイダーにいつでも変更できます。これは、ここに記載されているように mapConfiguration プロパティを使用して行われます。

https://sapui5.hana.ondemand.com/docs/api/symbols/sap.ui.vbm.GeoMap.html#setMapConfiguration

Google をマップ プロバイダーとして構成すると、GeoMap のすべての通常の機能を Google マップ上で使用できます。これは、あなたが探していたものだと思います。

Google マーカーとジオマップ スポットを同じマップで使用することはできません。ただし、Geomap スポットの外観をカスタマイズして、Google マーカーのように見せることができます。

于 2016-08-18T11:28:19.893 に答える