自定义覆盖类中的我的draw()方法从Google Maps扩展库中扩展LazyMarker并未被调用,我不知道为什么。这是我的方法:
@Override
public void draw(Canvas canvas, GoogleMap mapView, boolean shadow)
{
Log.e("SegmentOverlay2", "Shadow Value:"+shadow);
super.draw( canvas, mapView, shadow );
if( !shadow )
{
Log.e("SegementOverlay2", "Projection VALUE SEGMENTOVERLAY2: "+mapView.getProjection());
mProjectionProxy.setProjection( mapView.getProjection() );
draw(canvas);
}
}
我目前正在使用GMaps V2。我的代码出了什么问题?这是正确的方法吗?
答案 0 :(得分:0)
您似乎在混合使用Android API v1和v2。如果您的应用程序使用了API v1,则不能仅将MapView
替换为GoogleMap
,并认为它可以正常运行。
最简单的迁移方法是删除使用API v1的所有代码,并使用以下说明从头开始编写代码:https://developers.google.com/maps/documentation/android/start
Android Maps Extensions具有从Google Maps Android v2扩展API的API,也无法帮助您进行迁移。