Xamarin.Forms Geocoding Peta
Namespace Xamarin.Forms.Maps
menyediakan Geocoder
kelas, yang mengonversi antara alamat string dan koordinat lintang dan bujur yang disimpan dalam Position
objek. Untuk informasi selengkapnya tentang Position
struktur, lihat Posisi dan Jarak Peta.
Catatan
API geocoding alternatif tersedia di Xamarin.Essentials. Xamarin.EssentialsGeocoding
API menawarkan data alamat terstruktur saat alamat geocoding, dibandingkan dengan string yang dikembalikan oleh API ini. Untuk informasi selengkapnya, lihat Xamarin.Essentials: Geocoding.
Geocode alamat
Alamat jalan dapat dikodekan secara geografis ke dalam koordinat lintang dan bujur dengan membuat Geocoder
instans dan memanggil GetPositionsForAddressAsync
metode pada Geocoder
instans:
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}";
Metode mengambil GetPositionsForAddressAsync
string
argumen yang mewakili alamat, dan secara asinkron mengembalikan kumpulan Position
objek yang dapat mewakili alamat.
Membalikkan geocode alamat
Koordinat garis lintang dan garis bujur dapat di-reverse geocoded menjadi alamat jalan dengan membuat Geocoder
instans dan memanggil GetAddressesForPositionAsync
metode pada Geocoder
instans:
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();
Metode ini GetAddressesForPositionAsync
mengambil argumen yang Position
terdiri dari koordinat lintang dan bujur, dan secara asinkron mengembalikan kumpulan string yang mewakili alamat di dekat posisi.