Google Maps自定义标记图标大小未保留在Android上

时间:2018-11-06 09:51:35

标签: android google-maps nativescript nativescript-angular nativescript-google-maps-sdk

我正在使用nativescript-google-maps-sdk插件来创建Google地图。

一切正常,但是我的自定义标记图标出现了问题,如果您查看这些图片,您会发现图标大小在Android上未保留,这使它们变得非常非常小几乎看不到他们。在模拟器和真实电话中都会发生这种情况。

但是在IOS上,大小是可以的,如您在第二张图片中所见。图标图像的大小为16x16像素,格式为.png

我无法找到任何解决方案,所以这是我的最后选择,有人知道为什么会这样吗?

android

ios

这是我用来创建标记的代码:

getImage(this.getWarningIcon(warning.status)).then((result) => {

  const icon = new Image();
        icon.imageSource = result;

  const marker = new Marker();
        marker.position = warning.centerOfPolygon;
        marker.icon = icon;
        marker.flat = true;
        marker.anchor = [0.5, 0.5];
        marker.visible = warning.isVisible;
        marker.zIndex = zIndexOffset;
        marker.infoWindowTemplate = 'markerTemplate';
        marker.userData = {
          description: warning.description,
          startTime: warning.startTime,
          completionTime: warning.completionTime,
          freeText: warning.freeText
        };

  this.layers.push(marker);
  this.map.addMarker(marker);
});

1 个答案:

答案 0 :(得分:0)

在这种情况下,对于高密度设备而言16px的声音太低了。增大从服务器发送的图像的大小,或在将图像传递到标记之前本地调整图像的大小。

如果您熟悉Android API,则也可以考虑本地生成缩放位图。图像处理在Android中总是很复杂。当图像至少是静态的时,建议使用可绘制对象。