我在我的应用程序中为用户的当前位置使用自定义图标,并希望在升级到新的 Google 地图库时保持这种方式。
使用 Google Maps v1 库,我扩展了 MyLocationOverlay 并覆盖了 drawMyLocation 方法以在其中绘制我的自定义图标。
GoogleMap 使用 setMyLocationEnabled 方法启用当前位置,但据我所知,无法自定义它。
有人知道如何在 v2 上完成此操作吗?
我在我的应用程序中为用户的当前位置使用自定义图标,并希望在升级到新的 Google 地图库时保持这种方式。
使用 Google Maps v1 库,我扩展了 MyLocationOverlay 并覆盖了 drawMyLocation 方法以在其中绘制我的自定义图标。
GoogleMap 使用 setMyLocationEnabled 方法启用当前位置,但据我所知,无法自定义它。
有人知道如何在 v2 上完成此操作吗?
在使用自定义图标的地图构造函数中创建一个标记。
_myLocation = mMap.addMarker(new MarkerOptions()
.position(MAP_CENTER)
.title("My Location")
.icon(BitmapDescriptorFactory.fromResource(R.drawable.mylocation)));
调用 Provider 时更新标记位置:
public void onLocationChanged (Location location)
{
_myLocation.position(location); //May have to convert from location to LatLng
}
好的,所以我只是想如果你不添加标题或片段,标记将不会对点击事件产生影响,它会充当图像叠加层。虽然不完美,但很符合我的需求
private Marker marker = mMap.addMarker(new MarkerOptions()
.position( latLng)
.icon(BitmapDescriptorFactory.fromResource(R.drawable.arrow)));
谢谢大家
肯定有一种方法可以在当前位置显示自定义图标。结帐链接,您将获得更多想法来自定义地图上的图标。
试试下面的代码:
private static final LatLng MELBOURNE = new LatLng(-37.81319, 144.96298);
private Marker melbourne = mMap.addMarker(new MarkerOptions()
.position(MELBOURNE)
.title("Melbourne")
.snippet("Population: 4,137,400")
.icon(BitmapDescriptorFactory.fromResource(R.drawable.arrow)));