如何在地图上动态显示标注?

How to show a callout on the map dynamically?

我正在关注这个例子: https://docs.mapbox.com/android/maps/examples/symbol-layer-info-window/

也在这里:

https://github.com/mapbox/mapbox-android-demo/blob/master/MapboxAndroidDemo/src/main/java/com/mapbox/mapboxandroiddemo/examples/dds/InfoWindowSymbolLayerActivity.java

它正在从一个文件中加载一些带有描述的点。

第 271 行: 字符串 geoJson = loadGeoJsonFromAsset(activity, "us_west_coast.geojson");

我需要的是动态地做同样的事情。我已经将信息作为地图中的要素。我可以从那里得到标题和描述。我需要的是在触发此事件时使用 GenerateViewIconTask 和 setUpInfoWindowLayer:onMapClick.

所以基本上用户点击地图,我获取坐标并搜索地图的功能,获取 lat/lng、标题和描述并在地图上显示标注。

我可以处理点击、获取地图的特征、提取标题和描述。我需要做些什么才能在此位置显示带有标题和说明的漂亮标注。

抱歉回复晚了。您可以通过设置 textfield 属性 来显示标签,或者(根据文档)通过将 iconImage 属性 设置为字符串来创建信息 window ,比如 iconImage("{title}")。 可悲的是,我很少使用后者,因为它对我没有用。