【问题标题】:How to add text next to marker icon image using Android HERE map SDK如何使用 Android HERE 地图 SDK 在标记图标图像旁边添加文本
【发布时间】:2017-06-20 10:26:40
【问题描述】:

我的 Android 应用程序上有 HERE 地图。我想用一些文本(例如标记标识名称)在地图上绘制标记。 TEXT 应该放在标记图像图标旁边,最好是图标的右侧。

尝试过的选项:

  1. 标记marker.setTitle:它只设置信息框的标题,TEXT 并不总是按要求显示图标。
  2. MapLabeledMarker: 无法将其与地图集群一起使用。我发现的是,你可以添加 标记对象以映射集群,但不是 MapLabeledMarker。

我正在使用 90 天试用 HERE Map 高级 Android SDK。谢谢。

【问题讨论】:

    标签: android here-api


    【解决方案1】:

    不理想或效率不高,但根据您的用例,从代表您想要的 Android 布局创建 Bitmap 可能就足够了:https://stackoverflow.com/a/8120310/275524。然后,您可以从此 Bitmap 创建 HERE SDK Image

    【讨论】:

    • 感谢您的回复。但它不像你提到的那样有效,而且在我的情况下更糟,因为我在地图上处理超过 3K 的标记。
    【解决方案2】:

    我认为这个 sn-p 会解决你的问题。

    像这样以编程方式创建一个新布局:

    TextView textView = new TextView(context);
    textView.setTextColor(Color.parseColor("#FFFFFF"));
    textView.setText("Centered ViewPin");
    
    LinearLayout linearLayout = new LinearLayout(context);
    linearLayout.setBackgroundResource(R.color.colorAccent);
    linearLayout.setPadding(10, 10, 10, 10);
    linearLayout.addView(textView);
    

    在其上添加 Mapoverlay:

    MapOverlay mapOverlay = new MapOverlay(view, marker.getCoordinate());
     //dp to pixel
        int paddingX = (10);
        int paddingY = (10);
    
    PointF pointF = new PointF(marker.getAnchorPoint().x + paddingX, 
    marker.getAnchorPoint().y + paddingY);
    mapOverlay.setAnchorPoint(pointF);
    map.addMapOverlay(mapOverlay);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-02-05
      • 1970-01-01
      • 2013-10-01
      • 1970-01-01
      • 2022-09-28
      • 2021-08-14
      • 1970-01-01
      • 2016-04-06
      相关资源
      最近更新 更多