1. Hast Du Lust, bei uns mitzuarbeiten und das AH-Team zu verstärken? Alle Details zu dieser aktuellen Herausforderung findest Du hier.
  1. Neeldarax, 06.04.2011 #1
    Neeldarax

    Neeldarax Threadstarter Erfahrener Benutzer

    Hallo zusammen,

    ich versuch mich gerade mit Obtaining User Location | Android Developers.

    Mein Problem ist, dass ich ein custom View in die Map einbauen will, so wie es zB Latidute macht:
    [​IMG]

    Da seht ihr ein Foto von meiner Tastatur in einer Art Sprechblase auf ein GeoPoint ausgerichtet.
    Kann mir wer verraten nach was ich Suchen muss, um sowas zu verwirklichen?

    Ich nutze derzeit com.google.android.maps.Overlay um Drawables bzw. Bitmaps auf die Karte zu bringen.

    regards
     
  2. mago, 06.04.2011 #2
    mago

    mago Junior Mitglied

    Hallo,

    ich versuche mal zu beschreiben, wie ich das gemacht habe.

    Code:
    public class LocationMapView extends MapView {
               [...]
        public void setLocationMarker(GeoPoint point) {
                this.getOverlays().clear();
                OverlayItem overlayitem = new OverlayItem(point, "It's me", "I'm Here!");
                Drawable drawable = this.getResources().getDrawable(R.drawable.marker);
                locOverlay = new LocationOverlay(drawable, this.getContext());
                locOverlay.addOverlay(overlayitem);
                this.getOverlays().add(locOverlay);
                this.getController().animateTo(point);
                this.getController().setCenter(point);
        }
    }
    
    
    Code:
    public class LocationOverlay extends ItemizedOverlay {
        private ArrayList<OverlayItem> mOverlays = new ArrayList<OverlayItem>();
        private Context mContext;
        
        public LocationOverlay(Drawable defaultMarker, Context context) {
            super(boundCenterBottom(defaultMarker));
            mContext = context;
        }
    
        @Override
        protected boolean onTap(int index) {
            OverlayItem item = mOverlays.get(index);
            AlertDialog.Builder dialog = new AlertDialog.Builder(mContext);
            dialog.setTitle(item.getTitle());
            dialog.setMessage(item.getSnippet());
            dialog.show();
            return true;
        }
    
        @Override
        protected OverlayItem createItem(int idx) {
            return mOverlays.get(idx);
        }
    
        @Override
        public int size() {
            return mOverlays.size();
        }
    
        public void addOverlay(OverlayItem overlay) {
            mOverlays.add(overlay);
            populate();
        }
    }
    
     
Die Seite wird geladen...
Ähnliche Themen Forum Datum
[ERLEDIGT] Landscape-Darstellung nach Entsperrung des Geräts Android App Entwicklung 27.03.2017
[OFFEN] Wie kann ich mehrere Marker in eine MapView laden Android App Entwicklung 25.03.2017
QR-Result in EditText darstellen Android App Entwicklung 02.01.2017
Du betrachtest das Thema "CustomView in MapView darstellen" im Forum "Android App Entwicklung",