1

ここに画像の説明を入力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");
4

1 に答える 1

0

オーバーレイに追加する必要がありますitemizedOverlayMapView

MapView mapView = ...;
mapView.getOverlays().add(itemizedOverlay);
于 2012-06-14T12:03:03.537 に答える