5 votes

Comment implémenter la recherche par nom de rue ou par ville dans google maps ?

J'ai besoin d'une fonctionnalité de recherche comme ce site . Mais je me demande comment obtenir les coordonnées de l'api google par nom de rue ?

9voto

jenniem001 Points 586

API de géocodage de Google

Vous pouvez saisir une adresse et le système vous renverra les coordonnées Lat/long dans une réponse Json ou XML, etc.

Pour en savoir plus, cliquez ici :

http://code.google.com/apis/maps/documentation/geocoding/

0voto

Anu Points 397

Dans l'événement "onclick" de l'écriture de recherche

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();

Créer ensuite une classe de superposition de cartes dans 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;
    }
}

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X