2012-09-25 5 views
11

Ich bin neu in Android-Entwicklung und Navigation-Anwendungen. Ich entwickle Navigations-App wie Google Navigation, aber mit anderen Pfad. Ich kann meinen eigenen Weg finden. Jetzt möchte ich meinen Weg in der App auf die gleiche Weise wie die Google Navigation App zeigen. Ich möchte jedoch die Google Navigation API nicht verwenden. In der Google-Navigations-App repräsentieren sie die aktuelle Position durch einen Pfeil.wie man Richtungen pfeil ohne google maps api

Kann jemand die gleiche Darstellung verwenden? Oder jemand kann mir irgendwelche Hinweise geben, wo sollte ich suchen?

+0

Sie benötigen einen Punkt aus Ihrer Position mit einem Pfeil Bild? habe ich recht? – Satheesh

+0

Haben Sie so etwas versucht? http://android-er.blogspot.com.es/2010/08/simple-compass-sensormanager-and.html – jzafrilla

+0

ist das, wonach Sie suchen: http://adrianandroid.blogspot.co.il/2012 /09/how-to-draw-shortest-path-between-two.html –

Antwort

1

Die Android Asset Studio ist eine ziemlich gute Website für Symbole, können Sie eine sehr ähnliche wie die üblichen Google Maps Marker erstellen.

Hinzufügen eines Markers zu Karte erfolgt mit Overlays in Android. Der folgende Code befindet sich in onCreate einer Aktivität, die MapActivity erweitert.

MapView myMap = ((MapView)findViewById(R.id.myMapView)); 
Drawable marker = getResources().getDrawable(R.drawable.marker); 
List<Overlay> mapOverlays = null; 
GeoPoint point = new GeoPoint(Latitude, Longitude) 

myOverlays overlays = new myOverlays(marker, this); 
Overlay item oi = new OverlayItem(point, "Desc", ""); 
overlays.add(oi); 
mapOverlays = myMap.getOverlays(); 
mapOverlays.add(overlays); 

myOverlays Klasse:

import java.util.ArrayList; 
import android.content.Context; 
import android.graphics.drawable.Drawable; 
import com.google.android.maps.ItemizedOverlay; 
import com.google.android.maps.OverlayItem; 

@SuppressWarnings("rawtypes") 
public class myOverlays extends ItemizedOverlay { 
    private ArrayList<OverlayItem> overlays = new ArrayList<OverlayItem>(); 
    Context context; 

    public myOverlays(Drawable marker) { 
     super(boundCenter(marker)); 
    } 

    public myOverlays(Drawable marker, Context act) { 
     super(boundCenter(marker)); 
     context = act; 
    } 

    public void addOverlay(OverlayItem overlay) { 
     overlays.add(overlay); 
     populate(); 
    } 

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

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