Condividi tramite


Xamarin.Forms Geocodifica mappa

Lo Xamarin.Forms.Maps spazio dei nomi fornisce una Geocoder classe che converte tra indirizzi stringa e coordinate di latitudine e longitudine archiviate in Position oggetti . Per altre informazioni sullo struct, vedere Posizione e distanza della Position mappa.

Nota

Un'API di geocodifica alternativa è disponibile in Xamarin.Essentials. L'API Xamarin.EssentialsGeocoding offre dati di indirizzi strutturati quando si esegue la geocodifica degli indirizzi, anziché le stringhe restituite da questa API. Per altre informazioni, vedere Xamarin.Essentials: Geocodifica.

Geocodifica un indirizzo

Un indirizzo stradale può essere geocodificato in coordinate di latitudine e longitudine creando un'istanza Geocoder e chiamando il GetPositionsForAddressAsync metodo nell'istanza 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}";

Il GetPositionsForAddressAsync metodo accetta un string argomento che rappresenta l'indirizzo e restituisce in modo asincrono una raccolta di Position oggetti che potrebbero rappresentare l'indirizzo.

Decodifica geografica inversa di un indirizzo

Le coordinate di latitudine e longitudine possono essere invertite in un indirizzo stradale creando un'istanza Geocoder e chiamando il GetAddressesForPositionAsync metodo nell'istanza 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();

Il GetAddressesForPositionAsync metodo accetta un Position argomento costituito da coordinate di latitudine e longitudine e restituisce in modo asincrono una raccolta di stringhe che rappresentano gli indirizzi vicino alla posizione.