Sınırlar için veriye dayalı stil ayarlarını yapmak üzere aşağıdaki adımları uygulayın.
Yeni harita oluşturucuyu etkinleştir
Android için Haritalar SDK'sının 18.0.0 sürümü itibarıyla yeni bir harita oluşturucu kullanıma sunulmuştur. Bu oluşturucu, Android için Haritalar SDK'sına bulut tabanlı harita stili desteği dahil pek çok iyileştirme sunar.
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çiren harita oluşturucuya geçirdi. Bu değişiklik, yeni bir uygulama veya mevcut bir uygulamayı yeniden derlediğinizde artık uygulamanızda varsayılan olarak yükseltilmiş harita oluşturucunun kullanılacağı anlamına gelir.
Harita kimliği oluşturma
Yeni bir harita kimliği oluşturmak için Harita kimliği oluşturma bölümündeki adımları izleyin. Harita türünü Android olarak ayarladığınızdan emin olun.
Yeni harita stili oluşturma
Yeni bir harita stili oluşturmak için, stili oluşturmak üzere Harita stillerini yönetme bölümündeki talimatları izleyin ve stili, az önce oluşturduğunuz harita kimliğiyle ilişkilendirin.
Yeni harita stilinizde özellik katmanlarını seçme
Google API Konsolu'nda yeni harita stiliniz için hangi özellik katmanlarının görüntüleneceğini seçebilirsiniz. Özellik katmanı, haritada hangi tür sınırların (ör. yerel yönetim birimleri, eyaletler vb.) gösterileceğini belirler.
- Google API Konsolu'nda Harita Stilleri sayfasına gidin.
- İstenirse bir proje seçin.
- Bir harita stili seçin.
- Katman eklemek veya kaldırmak için Özellik katmanları açılır menüsünü 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. 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.
Bir haritanın özellik katmanına erişme
Posta kodu veya Mahalle özellik katmanı gibi bir haritanın her özellik katmanını temsil etmek için bir FeatureLayer
nesnesi kullanırsınız. Bir özellik katmanı nesnesine erişmek için harita başlatıldığında GoogleMap.getFeatureLayer()
çağrısı yapı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()
'a bir FeatureLayerOptions
nesnesi gönderin. Bu örnekte, POSTAL_CODE
katmanına erişmek istiyorsunuz. Stil uygulamak istediğiniz her katman için farklı bir FeatureLayer
nesnesi oluşturun.
FeatureLayer
nesnesini elde ettikten sonra bu özellikteki sınır poligonlara stil uygulayabilirsiniz.
Harita özelliklerini kontrol edin (zorunlu)
Sınırlar için veriye dayalı stil oluşturma işleminde harita kimliği gerekir. Harita kimliği eksikse veya geçersiz bir harita kimliği iletildiyse sınırlar için veri odaklı stil yüklenemez. Sorun giderme adımı olarak, sınırlar için veriye dayalı stillerin desteklenip desteklenmediğini kontrol etmek için MapCapabilities
aracını 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());