有没有办法在谷歌地图的叠加层上方添加标记反应?

Posted

技术标签:

【中文标题】有没有办法在谷歌地图的叠加层上方添加标记反应?【英文标题】:Is there any way to add markers above overlay in google maps react? 【发布时间】:2022-01-07 23:00:07 【问题描述】:

我正在尝试在地图上方添加叠加层并将标记放置在叠加层上方。但我不能这样做。我该怎么做?我正在使用 google-maps-react 库作为依赖项。

<div>
    <Map
      key=active
      google=google
      containerStyle=containerStyle
      zoom=5
      disableDefaultUI
      initialCenter=
        lat: markers[0].position.lat,
        lng: markers[0].position.lng,
      
    >
      <div className="absolute top-0 bottom-0 right-0 left-0 bg-gray-400 pointer-events-none" />
      <Marker
        title="The marker`s title will appear as a tooltip."
        name="SOMA"
        position= lat: 37.778519, lng: -122.40564 
      />
    </Map>
  </div>

the view right now

【问题讨论】:

【参考方案1】:

您可以使用 Google Maps javascript API 的 GroundOverlay object 来完成此操作。但是您需要获取 google-maps-react 代码中使用的当前地图对象,然后您将使用它来将叠加层设置到此地图参考中。

请参阅下面的sample code 和代码 sn-p:

import React,  Component  from 'react';
import  Map, GoogleApiWrapper, Marker  from 'google-maps-react';

const mapStyles = 
  width: '100%',
  height: '100%',
;

const imageBounds = 
  north: 40.773941,
  south: 40.712216,
  east: -74.12544,
  west: -74.22655,
;

class MapWithOverlay extends Component 
  mapRef = (ref) => 
    let historicalOverlay = new google.maps.GroundOverlay(
      'https://storage.googleapis.com/geo-devrel-public-buckets/newark_nj_1922-661x516.jpeg',
      imageBounds
    );
    historicalOverlay.setMap(ref.map);
  ;

  render() 
    return (
      <>
        <div>
          <Map
            ref=(ref) => 
              this.mapRef(ref);
            
            google=this.props.google
            zoom=12
            style=mapStyles
            initialCenter= lat: 40.74, lng: -74.18 
          >
            <Marker position= lat: 40.74, lng: -74.18  />
          </Map>
        </div>
      </>
    );
  


export default GoogleApiWrapper(
  apiKey: 'YOUR_KEY',
)(MapWithOverlay);

【讨论】:

以上是关于有没有办法在谷歌地图的叠加层上方添加标记反应?的主要内容,如果未能解决你的问题,请参考以下文章

带有 3D 标记的 Android 谷歌地图?

用户如何在谷歌地图颤振上添加多个标记

在谷歌地图v2 android中移动标记

如何在谷歌地图android上添加标记?

如何在颤振中使用 json API 在谷歌地图中添加标记?

用于文本叠加的自定义标记谷歌地图街景 Xcode