Android应用中的地图叠加

时间:2012-06-14 11:35:51

标签: android google-maps

enter image description here我正在尝试在我的Android应用程序中向地图的某些位置添加图片图像,但是在我的地图上出现了一个大的半透明矩形,这不允许我与之交互主地图,我尝试使用地图叠加或逐项地图叠加,但我得到相同的结果,我不知道这是因为图像,或者这通常是有人在他的地图添加叠加层时发生的事情。 PS我正在使用.png图片

如果有人能帮助我,我会非常感激 感谢

这是逐项重叠类

private class MirItemizedOverlay extends ItemizedOverlay {

        private List<OverlayItem> mOverlays = new ArrayList<OverlayItem>();

        public MirItemizedOverlay(Drawable defaultMarker) {
            super(boundCenterBottom(defaultMarker));
            // TODO Auto-generated constructor stub
        }

        @Override
        protected OverlayItem createItem(int i) {
            return mOverlays.get(i);
        }

        @Override
        public int size() {
            return mOverlays.size();
        }

        public void addOverlayItem(OverlayItem overlayItem) {
            mOverlays.add(overlayItem);
            populate();
        }

        public void addOverlayItem(int lat, int lon, String title) {
            GeoPoint point = new GeoPoint(lat, lon);
            OverlayItem overlayItem = new OverlayItem(point, title, null);
            addOverlayItem(overlayItem);
        }

    }

这就是我在地图活动中使用oncreate方法的方法

Drawable makerDefault =this.getResources().getDrawable(R.drawable.redcircle);
 MirItemizedOverlay itemizedOverlay = new MirItemizedOverlay(makerDefault); 
  GeoPoint point = new GeoPoint((int) (49.9736518*1E6), (int) (7.114648   *1E6));
   OverlayItem overlayItem = new OverlayItem(point, "hotspot1", null);
  itemizedOverlay.addOverlayItem((int) (49.9736518*1E6), (int) (7.114648 *1E6), "hotspot1");

1 个答案:

答案 0 :(得分:0)

您应该将itemizedOverlay添加到MapView叠加层:

MapView mapView = ...;
mapView.getOverlays().add(itemizedOverlay);