Xamarin.Essentials:Harita
Map sınıfı, bir uygulamanın yüklü eşleme uygulamasını belirli bir konuma veya yer işaretine açmasına olanak tanır.
Kullanmaya başlayın
Bu API'yi kullanmaya başlamak için kitaplığın projelerinizde düzgün yüklendiğinden ve ayarlandığından emin olmak için Xamarin.Essentials kullanmaya başlama kılavuzunu okuyun.
Haritayı Kullanma
Sınıfınızda için Xamarin.Essentials bir başvuru ekleyin:
using Xamarin.Essentials;
Map işlevi, veya Placemark
ile Location
yöntemini çağırarak OpenAsync
çalışır ve isteğe bağlı MapLaunchOptions
ile açılır.
public class MapTest
{
public async Task NavigateToBuilding25()
{
var location = new Location(47.645160, -122.1306032);
var options = new MapLaunchOptions { Name = "Microsoft Building 25" };
try
{
await Map.OpenAsync(location, options);
}
catch (Exception ex)
{
// No map application available to open
}
}
}
ile Placemark
açarken aşağıdaki bilgiler gereklidir:
CountryName
AdminArea
Thoroughfare
Locality
public class MapTest
{
public async Task NavigateToBuilding25()
{
var placemark = new Placemark
{
CountryName = "United States",
AdminArea = "WA",
Thoroughfare = "Microsoft Building 25",
Locality = "Redmond"
};
var options = new MapLaunchOptions { Name = "Microsoft Building 25" };
try
{
await Map.OpenAsync(placemark, options);
}
catch (Exception ex)
{
// No map application available to open or placemark can not be located
}
}
}
Uzantı Metotları
veya Placemark
öğesine zaten bir başvurunuz Location
varsa, isteğe bağlı MapLaunchOptions
ile yerleşik uzantı yöntemini OpenMapAsync
kullanabilirsiniz:
public class MapTest
{
public async Task OpenPlacemarkOnMap(Placemark placemark)
{
try
{
await placemark.OpenMapAsync();
}
catch (Exception ex)
{
// No map application available to open
}
}
}
Yol Tarifleri Modu
herhangi bir MapLaunchOptions
olmadan çağrısı OpenMapAsync
yaparsanız, harita belirtilen konuma başlatılır. İsteğe bağlı olarak, cihazın geçerli konumundan hesaplanan bir gezinti yolunuz olabilir. Bu, üzerinde MapLaunchOptions
ayarlanarak NavigationMode
gerçekleştirilir:
public class MapTest
{
public async Task NavigateToBuilding25()
{
var location = new Location(47.645160, -122.1306032);
var options = new MapLaunchOptions { NavigationMode = NavigationMode.Driving };
await Map.OpenAsync(location, options);
}
}
Platform Farkları
Platform Uygulama Özellikleri
Android, cihazda haritalar uygulamasını başlatmak için Uri düzenini kullanır geo:
. Bu, kullanıcıdan bu Uri düzenini destekleyen mevcut bir uygulamadan seçim istemesini isteyebilir. Xamarin.Essentialsbu şemayı destekleyen Google Haritalar ile test edilir.
API
İlgili Video
Channel 9 ve YouTube'da daha fazla Xamarin videosu bulun.