2012-09-25 60 views
11

Tôi mới sử dụng ứng dụng điều hướng và phát triển Android. Tôi đang phát triển ứng dụng điều hướng giống như Google Navigation nhưng với đường dẫn khác nhau. Tôi có thể có được con đường riêng của mình. Bây giờ tôi muốn hiển thị đường dẫn của tôi trong ứng dụng theo cách tương tự như ứng dụng Google Navigation. Nhưng tôi không muốn sử dụng API điều hướng của Google. Trong ứng dụng điều hướng của Google, chúng đại diện cho vị trí hiện tại bằng một mũi tên.cách nhận chỉ đường mũi tên mà không cần sử dụng bản đồ google api

Có ai biết cách sử dụng cùng một biểu diễn không? Hoặc bất kỳ ai có thể cho tôi bất kỳ gợi ý nơi tôi nên tìm?

+0

Bạn cần một điểm vị trí của mình với một hình ảnh mũi tên? Tôi có đúng không? – Satheesh

+0

Bạn đã thử một cái gì đó như thế này? http://android-er.blogspot.com.es/2010/08/simple-compass-sensormanager-and.html – jzafrilla

+0

là nội dung bạn đang tìm kiếm: http://adrianandroid.blogspot.co.il/2012 /09/how-to-draw-shortest-path-between-two.html –

Trả lời

1

Android Asset Studio là trang web khá tốt cho các biểu tượng, bạn có thể tạo một trang rất giống với điểm đánh dấu bản đồ google thông thường.

Thêm điểm đánh dấu vào bản đồ được thực hiện bằng cách sử dụng lớp phủ trong Android. Mã bên dưới nằm trong onCreate của một hoạt động mở rộng MapActivity.

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 lớp:

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(); 
    } 
} 
Các vấn đề liên quan