Partager via


Xamarin.Forms Géocodage de carte

L’espace Xamarin.Forms.Maps de noms fournit une Geocoder classe, qui convertit entre les adresses de chaîne et les coordonnées de latitude et de longitude stockées dans Position des objets. Pour plus d’informations sur le struct, consultez Position et distance de la Position carte.

Remarque

Une autre API de géocodage est disponible dans Xamarin.Essentials. L’API Xamarin.EssentialsGeocoding offre des données d’adresse structurées lors du géocodage, par opposition aux chaînes retournées par cette API. Pour plus d’informations, consultez Xamarin.Essentials: Géocodage.

Géocoder une adresse

Une adresse postale peut être géocodée en coordonnées de latitude et de longitude en créant une Geocoder instance et en appelant la GetPositionsForAddressAsync méthode sur l’instance Geocoder :

using Xamarin.Forms.Maps;
// ...
Geocoder geoCoder = new Geocoder();

IEnumerable<Position> approximateLocations = await geoCoder.GetPositionsForAddressAsync("Pacific Ave, San Francisco, California");
Position position = approximateLocations.FirstOrDefault();
string coordinates = $"{position.Latitude}, {position.Longitude}";

La GetPositionsForAddressAsync méthode prend un string argument qui représente l’adresse et retourne de façon asynchrone une collection d’objets Position pouvant représenter l’adresse.

Géocode inverse une adresse

Les coordonnées de latitude et de longitude peuvent être géocodées inverses dans une adresse postale en créant une Geocoder instance et en appelant la GetAddressesForPositionAsync méthode sur l’instance Geocoder :

using Xamarin.Forms.Maps;
// ...
Geocoder geoCoder = new Geocoder();

Position position = new Position(37.8044866, -122.4324132);
IEnumerable<string> possibleAddresses = await geoCoder.GetAddressesForPositionAsync(position);
string address = possibleAddresses.FirstOrDefault();

La GetAddressesForPositionAsync méthode prend un Position argument composé de coordonnées de latitude et de longitude, et retourne de façon asynchrone une collection de chaînes qui représentent les adresses près de la position.