首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >谷歌地图没有在android中显示

谷歌地图没有在android中显示
EN

Stack Overflow用户
提问于 2022-11-16 03:11:24
回答 1查看 52关注 0票数 0

我有一个应用程序,在这里我使用离子型@电容器/google中的映射javascript来显示地图。当我在浏览器中运行这个应用程序时,它工作得很好。但是,每当我在模拟器或设备中运行应用程序时,地图就不会显示。

方法用于显示谷歌地图:

代码语言:javascript
复制
async createMap(map: ElementRef) {
this.map = await GoogleMap.create({
  id: "capacitor-google-maps",
  element: map.nativeElement,
  apiKey: environment.googleMapsApiKey,
  config: {
    zoom: 18,
    center: this.position,
    mapTypeId: "satellite",
    disableDefaultUI: true,
  },
  forceCreate: true,
});

await this.addMarker(this.position.lat, this.position.lng);
await this.addListeners();
}
EN

回答 1

Stack Overflow用户

发布于 2022-11-16 05:36:45

文档上写着:

在Android上,地图呈现在整个uses视图之下,并使用此组件在滚动事件期间管理其定位。这意味着,作为开发人员,您必须确保webview是透明的,从层一直到底层。在典型的Ionic应用程序中,这意味着设置元素(如IonContent和根HTML标记)的透明度,以确保可以看到它。如果你不能在Android上看到你的地图,这应该是你第一次检查。

因此,您需要修改css,以便它在Android上显示,这样的东西应该可以完成以下工作:

代码语言:javascript
复制
ion-content {
  --background: transparent;
}

body {
  background: transparent;
}

然而,做这些css更改会导致许多不必要的样式更改和问题。此外,根据我尝试@电容/谷歌地图的经验,我强烈建议使用@ar角/google-地图,因为它更发达,由谷歌维护,电容器插件还有很长的路要走。

你可以在离子论坛上查看这个帖子,因为我也有同样的问题。

更新:

您可以检查@angular/google-map 这里,也可以检查下面的示例代码:

HTML

代码语言:javascript
复制
<google-map [center]="{lat: 20, lng:20}" [options]="options" height="140px" width="auto">

    <map-marker [position]="{lat: 20, lng: 20}" [options]="markerOptions"></map-marker>

</google-map>

ts:

代码语言:javascript
复制
  markerOptions: google.maps.MarkerOptions = {
    draggable: false,
  };

  options: google.maps.MapOptions = {
    zoom: 13,
    disableDefaultUI: true,
    draggable: false,
    clickableIcons: false, 
  };

您还可以看到Google的文档来获取地图上所有选项的列表

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74454692

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档