不了解com.google.android.maps.Overlay的drawAt()方法
试图在android程序中创建谷歌地图覆盖。在我的覆盖层的绘制方法中,我有两种添加pin的方法。其中一个有效,另一个无效。不幸的是,一个不工作的也是唯一一个有能力添加阴影!有什么帮助吗不了解com.google.android.maps.Overlay的drawAt()方法,android,google-maps,overlay,Android,Google Maps,Overlay,试图在android程序中创建谷歌地图覆盖。在我的覆盖层的绘制方法中,我有两种添加pin的方法。其中一个有效,另一个无效。不幸的是,一个不工作的也是唯一一个有能力添加阴影!有什么帮助吗 @Override public void draw(android.graphics.Canvas canvas, MapView mapView, boolean shadow) { Point po = mapView.getProjection().toPixels(mapVie
@Override
public void draw(android.graphics.Canvas canvas, MapView mapView,
boolean shadow) {
Point po = mapView.getProjection().toPixels(mapView.getMapCenter(),
null);
// This does _not_ work, but I would really like it to!
drawAt(canvas, mapView.getResources().getDrawable(R.drawable.map_marker_v),
po.x, po.y, false);
// This does work, but only does half the job
canvas.drawBitmap(BitmapFactory.decodeResource(mapView.getResources(),
R.drawable.map_marker_v), po.x, po.y, null);
}
编辑:固定类型乍一看,没有什么能让我明白是什么原因导致您的pin无法提取。但是,我可能已经找到了一个暂时的解决办法 看着谷歌,我发现一个用户发布了他们版本的覆盖图,可以添加一个图标和一个阴影。这可能就是你想要的
希望这能有所帮助。我认为您的问题可能只是您没有在
drawAt()中设置可绘制的边界。您可以使用手动设置边界,也可以使用ItemizeOverlay的便利方法或
我相信第二种方法之所以有效,是因为对于解码的位图,您不必指定可绘制的边界。您能准确解释“不起作用”的含义吗?您是否在logcat窗口中收到任何错误消息?你的应用程序崩溃了吗?它不会画画吗?安东尼,当然!它根本不吸引人。logcat中没有任何类型的错误消息,但应用程序不会崩溃!其实我也想过要这么做哈哈