2011-03-23 24 views

cevap

0

List<Address> addresses = geoCoder.getFromLocationName("enter location name",5); 
p = new GeoPoint((int) (addresses.get(0).getLatitude() * 1E6), 
            (int) (addresses.get(0).getLongitude() * 1E6)); 

        controller.animateTo(p); 
        controller.setZoom(12); 

        MapOverlay mapOverlay = new MapOverlay(); 
       List<Overlay> listOfOverlays = map.getOverlays(); 
       listOfOverlays.clear(); 
       listOfOverlays.add(mapOverlay); 

        map.invalidate(); 
Eğer coğrafi kodlama şimdi anladım var gibi

Sonra mapActivity

class MapOverlay extends Overlay 
{ 
    private GeoPoint pointToDraw; 

    public void setPointToDraw(GeoPoint point) { 
      pointToDraw = point; 
    } 

    public GeoPoint getPointToDraw() 
    { 
      return pointToDraw; 

    } 

    @Override 
    public boolean draw(Canvas canvas, MapView mapView, boolean shadow, long when) { 
     super.draw(canvas, mapView, shadow);     

     // convert point to pixels 
     Point screenPts = new Point(); 
     mapView.getProjection().toPixels(pointToDraw, screenPts); 

     // add marker 
     Bitmap bmp = BitmapFactory.decodeResource(getResources(), R.drawable.marker); 
     canvas.drawBitmap(bmp, screenPts.x, screenPts.y - 24, null); // 24 is the height of image  
     return true; 
    } 
} 
İlgili konular