Share via


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ı MapLaunchOptionsile 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 Placemarkaç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ı MapLaunchOptionsile 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 MapLaunchOptionsolmadan ç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 MapLaunchOptionsayarlanarak 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ı

  • NavigationMode Bisiklet, Sürüş ve Yürümeyi destekler.

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

Channel 9 ve YouTube'da daha fazla Xamarin videosu bulun.