Xamarin.Forms Geocodierung zuordnen
Der Xamarin.Forms.Maps
Namespace stellt eine Geocoder
Klasse bereit, die zwischen Zeichenfolgenadressen und Breiten- und Längengradkoordinaten konvertiert, die in Position
Objekten gespeichert sind. Weitere Informationen zur Position
Struktur finden Sie unter Kartenposition und Entfernung.
Hinweis
Eine alternative Geocodierungs-API ist verfügbar in Xamarin.Essentials. Die Xamarin.EssentialsGeocoding
API bietet strukturierte Adressdaten beim Geocodierungsadressen im Gegensatz zu den von dieser API zurückgegebenen Zeichenfolgen. Weitere Informationen finden Sie unter Xamarin.Essentials: Geocodierung.
Geocodieren einer Adresse
Eine Straße kann in Breiten- und Längengradkoordinaten geocodiert werden, indem eine Geocoder
Instanz erstellt und die GetPositionsForAddressAsync
Methode für die Geocoder
Instanz aufgerufen wird:
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}";
Die GetPositionsForAddressAsync
Methode verwendet ein string
Argument, das die Adresse darstellt, und gibt asynchron eine Auflistung von Position
Objekten zurück, die die Adresse darstellen können.
Umgekehrte Geocodierung einer Adresse
Breiten- und Längengradkoordinaten können geocodiert in eine Straßenadresse umgewandelt werden, indem eine Geocoder
Instanz erstellt und die GetAddressesForPositionAsync
Methode für die Geocoder
Instanz aufgerufen wird:
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();
Die GetAddressesForPositionAsync
Methode verwendet ein Position
Argument, das aus Breiten- und Längengradkoordinaten besteht, und gibt asynchron eine Auflistung von Zeichenfolgen zurück, die die Adressen in der Nähe der Position darstellen.