Sınırlar için veriye dayalı stil oluşturmayı ayarlamak üzere aşağıdaki adımları uygulayın.
Yeni harita oluşturucuyu etkinleştirme
Android için Haritalar SDK'sının 18.0.0 sürümünden itibaren yükseltilmiş bir harita oluşturucu kullanılabilir. Bu oluşturucu, Android için Haritalar SDK'sına bulut tabanlı harita stilleri desteği de dahil olmak üzere birçok iyileştirme getiriyor.
Android için Haritalar SDK'sının 18.2.0 sürümünün yayınlanmasıyla birlikte Google, varsayılan oluşturucuyu eski oluşturucudan yeni sürüme geçirilen harita oluşturucuya değiştirdi. Bu değişiklik, yeni bir uygulama oluşturduğunuzda veya mevcut bir uygulamayı yeniden oluşturduğunuzda yükseltilmiş harita oluşturucunun artık uygulamanızda varsayılan olarak kullanılacağı anlamına gelir.
Harita kimliği oluşturma
Yeni bir harita kimliği oluşturmak için Harita kimliği oluşturma başlıklı makaledeki adımları uygulayın. Harita türünü Android olarak ayarladığınızdan emin olun.
Yeni harita stili oluşturma
Yeni bir harita stili oluşturmak için Harita stillerini yönetme bölümündeki talimatları uygulayarak stili oluşturun ve yeni oluşturduğunuz harita kimliğiyle ilişkilendirin.
harita kimliğine bağlandığında etkinleştirilen katmanlar koyu harita stilinde de kullanılabilir.Yeni harita stilinizdeki özellik katmanlarını seçin
Google API Konsolu'nda yeni harita stiliniz için hangi özellik katmanlarının gösterileceğini seçebilirsiniz. Özellik katmanı, haritada hangi tür sınırların (ör. yerleşim yerleri, eyaletler vb.) görüneceğini belirler.
- Google API Konsolu'nda Harita Stilleri sayfasına gidin.
- İstenirse bir proje seçin.
- Harita stili seçin.
- Katman eklemek veya kaldırmak için Özellik katmanları açılır listesini tıklayın.
- Değişikliklerinizi kaydetmek ve haritalarınızda kullanılabilir hale getirmek için Kaydet'i tıklayın.
Harita başlatma kodunuzu güncelleme
Bu adım için yeni oluşturduğunuz harita kimliği gerekir. Bu kodu Haritalar Yönetimi sayfanızda bulabilirsiniz.
Harita kimliğini ilk kullanıma hazırlama kodunuza eklemek için Harita kimliğini uygulamanıza ekleme başlıklı makaleyi inceleyin.
Haritanın bir özellik katmanına erişme
Posta kodu veya yerellik özellik katmanı gibi bir haritanın her bir özellik katmanını temsil etmek için FeatureLayer
nesnesi kullanırsınız. Bir özellik katmanı nesnesine erişmek için harita başlatıldığında GoogleMap.getFeatureLayer()
işlevini çağırın:
Java
private FeatureLayer postalCodeLayer;
@Override public void onMapReady(GoogleMap map) { // Get the POSTAL_CODE feature layer. postalCodeLayer = map.getFeatureLayer(new FeatureLayerOptions.Builder() .featureType(FeatureType.POSTAL_CODE) .build()); ... }
Kotlin
private var postalCodeLayer: FeatureLayer? = null
override fun onMapReady(googleMap: GoogleMap) { // Get the POSTAL_CODE feature layer. postalCodeLayer = googleMap.getFeatureLayer(new FeatureLayerOptions.Builder() .featureType(FeatureType.POSTAL_CODE) .build()) ... }
Özellik katmanının türünü belirtmek için getFeatureLayer()
'e bir FeatureLayerOptions
nesnesi iletin. Bu örnekte, POSTAL_CODE
katmanına erişmek istiyorsunuz. Stil vermek istediğiniz her katman için farklı bir FeatureLayer
nesnesi oluşturun.
FeatureLayer
nesnesini aldıktan sonra bu özellikteki sınır poligonlarına stil uygulayabilirsiniz.
Harita özelliklerini kontrol edin (zorunlu)
Sınırlar için veriye dayalı stil oluşturma özelliği, harita kimliği gerektirir. Harita kimliği eksikse veya geçersiz bir harita kimliği iletilirse sınırlar için veriye dayalı stil oluşturma yüklenemez. Sorun giderme adımı olarak, sınırların veriye dayalı stilinin desteklenip desteklenmediğini kontrol etmek için MapCapabilities
kullanabilirsiniz.
Kotlin
val capabilities: MapCapabilities = googleMap.getMapCapabilities() System.out.println("Data-driven Styling is available: " + capabilities.isDataDrivenStylingAvailable())
Java
MapCapabilities capabilities = googleMap.getMapCapabilities(); System.out.println("Data-driven Styling is available: " + capabilities.isDataDrivenStylingAvailable());