Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/213.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 向mapview添加覆盖(初学者)_Java_Android_Google Maps_Map_Android Mapview - Fatal编程技术网

Java 向mapview添加覆盖(初学者)

Java 向mapview添加覆盖(初学者),java,android,google-maps,map,android-mapview,Java,Android,Google Maps,Map,Android Mapview,我有下面的代码,但是覆盖图似乎在地图上不可见,尽管重点是所需的地理点。 代码如下: public void setOverlay() { MapView mapView = (MapView)findViewById(R.id.mapview); mapView.getController().setCenter(place.getGeoPoint()); List<Overlay> mapOverlays = mapView.getOverlays()

我有下面的代码,但是覆盖图似乎在地图上不可见,尽管重点是所需的地理点。 代码如下:

   public void setOverlay()
{
    MapView mapView = (MapView)findViewById(R.id.mapview);
    mapView.getController().setCenter(place.getGeoPoint());
    List<Overlay> mapOverlays = mapView.getOverlays();
    Drawable drawable = this.getResources().getDrawable(R.drawable.ic_launcher);
    MyItemizedOverlay itemizedOverlay = new MyItemizedOverlay(drawable);
    OverlayItem overlayitem = new OverlayItem(place.getGeoPoint(), "Hola, Mundo!", "I'm in Mexico City!");
    itemizedOverlay.addOverlay(overlayitem);
    mapOverlays.add(itemizedOverlay);


}
public void setOverlay()
{
MapView MapView=(MapView)findViewById(R.id.MapView);
mapView.getController().setCenter(place.getGeoPoint());
List mapOverlays=mapView.getOverlays();
Drawable Drawable=this.getResources().getDrawable(R.Drawable.ic_启动器);
MyItemizedOverlay itemizedOverlay=新MyItemizedOverlay(可绘制);
OverlayItem OverlayItem=新的OverlayItem(place.getGeoPoint(),“你好,芒多!”,“我在墨西哥城!”);
itemizedOverlay.addOverlay(overlayitem);
添加(itemizedOverlay);
}
这里可能有什么问题?

您需要拨打:

mapView.invalidate();
将覆盖添加到
MapView
后,强制重新绘制覆盖。将上面的行添加到方法的底部,它应该可以工作(我假设您的图标不是完全透明的:-),在这种情况下,您无论如何都不会看到它)


问候。

嗯,它仍然不工作。稍后我会尝试修复它,这很奇怪。上面的代码看起来不错。如果未显示,请检查以下内容:1-您正在真正调用的
setOverlay()
place
的值是否正确。地图总是从使用的最后一个位置开始,您可能认为它正确地位于中心。2-检查
MyItemizedOverlay
class。