Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Xamarin.Forms.Maps Przestrzeń nazw udostępnia klasęGeocoder, która konwertuje między adresami ciągów a współrzędnymi szerokości geograficznej i długości geograficznej przechowywanymi w Position obiektach. Aby uzyskać więcej informacji na temat Position struktury, zobacz Map Position and Distance (Położenie mapy i odległość).
Uwaga
Alternatywny interfejs API geokodowania jest dostępny w systemie Xamarin.Essentials. Interfejs Xamarin.EssentialsGeocoding API oferuje dane adresów strukturalnych podczas geokodowania adresów, w przeciwieństwie do ciągów zwracanych przez ten interfejs API. Aby uzyskać więcej informacji, zobacz Xamarin.Essentials: Geokodowanie.
Geokodowanie adresu
Adres ulicy może być geokodowany do współrzędnych szerokości i długości geograficznej, tworząc wystąpienie i wywołując metodę Geocoder w wystąpieniuGeocoder:GetPositionsForAddressAsync
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}";
Metoda GetPositionsForAddressAsync przyjmuje string argument reprezentujący adres, a asynchronicznie zwraca kolekcję Position obiektów, które mogą reprezentować adres.
Odwrotne geokodowanie adresu
Współrzędne geograficzne i współrzędne geograficzne mogą być odwrócone geokodowane na adres ulicy, tworząc Geocoder wystąpienie i wywołując GetAddressesForPositionAsync metodę w wystąpieniu 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();
Metoda GetAddressesForPositionAsync przyjmuje Position argument składający się ze współrzędnych szerokości i długości geograficznej, a asynchronicznie zwraca kolekcję ciągów reprezentujących adresy w pobliżu pozycji.