如何在 Android 上的 Google 地图上的标记旁边显示标签?
Posted
技术标签:
【中文标题】如何在 Android 上的 Google 地图上的标记旁边显示标签?【英文标题】:How to show a label next to a marker on Google maps on Android? 【发布时间】:2018-01-19 14:22:37 【问题描述】:我正在开发一个使用 Google 地图 android API 的 Android 应用程序。我在地图上显示了多个标记,我想在每个标记旁边显示一个标签,如下图所示,但我无法找到怎么做。
我浏览了https://developers.google.com/maps/documentation/android-api/map-with-marker 上的 Google 地图文档 但我无法找到有关如何以这种方式显示标签的详细信息。我尝试了打开一个弹出窗口的标题属性,但我需要它来显示关于我的标记的详细视图(信息窗口),我需要显示主要标题而不打开任何标记的弹出窗口
知道如何按照附图中显示的方式添加标记吗?
【问题讨论】:
你可以查看这些***.com/questions/17989389/… @NavjotSingh:我见过这些。标题属性仅在用户单击标记时显示 【参考方案1】:不确定这是否是您的想法,但这里是
创建MarkerOptions
对象:
MarkerOptions options = new MarkerOptions()
.title(name)
.position(source)
.icon(gettIconFromDrawable(myMarker))
.snippet("Briefly describe \nyour content here");
然后将标记添加到地图上
Marker sourceMarker = mMap.addMarker(options);
创建InfoWindowAdapter
以容纳sn-p 中的多行。 (原answer这里)
mMap.setInfoWindowAdapter(new GoogleMap.InfoWindowAdapter()
@Override
public View getInfoWindow(Marker arg0)
return null;
@Override
public View getInfoContents(Marker marker)
Context context = getApplicationContext(); //or getActivity(), YourActivity.this, etc.
LinearLayout info = new LinearLayout(context);
info.setOrientation(LinearLayout.VERTICAL);
TextView title = new TextView(context);
title.setTextColor(Color.BLACK);
title.setGravity(Gravity.CENTER);
title.setTypeface(null, Typeface.BOLD);
title.setText(marker.getTitle());
TextView snippet = new TextView(context);
snippet.setTextColor(Color.GRAY);
snippet.setText(marker.getSnippet());
info.addView(title);
info.addView(snippet);
return info;
);
最后,添加此属性以确保标记保持可见
sourceMarker.showInfoWindow();
【讨论】:
感谢您的帮助。但实际上我在问题中提到我已经在使用 infoWindow 来显示关于标记对象的自定义和详细视图。我需要为地图上的所有标记显示一个线标签,无需单击标记即可看到该线标签 这就是sourceMarker.showInfoWindow();
位应该做的事情
但我的要求略有不同。所有标记都必须有一个可见的标签,单击标记应显示包含该标记详细信息的详细信息窗口
嗨@AkshitRewari 你找到解决方案了吗?如果您找到了解决方案,可以分享一下吗?以上是关于如何在 Android 上的 Google 地图上的标记旁边显示标签?的主要内容,如果未能解决你的问题,请参考以下文章
如何通过滑行在 Google 地图上的 infoWindow 中获取图像 - Android
Android Studio - 真正的 Android 设备上的 Google 地图在发布 apk 时仍为空白
Google Maps Android API v2 - 检测地图上的触摸