Veri kümelerinin veriye dayalı stilini ayarlamak için aşağıdaki adımları uygulayın.
API anahtarı alma ve API'leri etkinleştirme
Veri kümeleri için veriye dayalı stilleri kullanmadan önce: Hem faturalandırma hesabı hem de iOS için Haritalar SDK'sı ve Haritalar Veri Kümeleri API'si etkin. Daha fazla bilgi edinmek için aşağıdaki makaleleri inceleyin:
Harita kimliği oluşturma
mapID, tek bir Google Haritası örneği. Harita kimlikleri oluşturabilir ve bir stili güncelleyebilirsiniz istediğiniz zaman Google Cloud Console'da bir harita kimliğiyle ilişkilendirilmesini sağlayabilirsiniz.
Yeni harita stili oluşturma
Yeni bir harita stili oluşturmak için Haritayı yönetme stil oluşturun değiştirebilirsiniz. İşlem tamamlandığında stili yeni oluşturulan harita kimliğiyle ilişkilendirin.
Harita başlatma kodunuzu güncelleme
Bu adım, harita kimliğinin bir veya daha fazla özelliğe sahip bir stille ilişkilendirilmiş olmasını gerektirir katmanlar etkinleştirildi. Harita kimliğinizin Cloud Console'un nasıl yapılandırıldığını Haritalar'da inceleyin. Yönetim.
Swift
// A map ID using a style with one or more feature layers enabled let mapID = GMSMapID(identifier: "YOUR_MAP_ID") let mapView = GMSMapView(frame: .zero, mapID: mapID, camera: GMSCameraPosition(latitude: 40, longitude: -80, zoom: 7))
Objective-C
// A map ID using a style with one or more feature layers enabled GMSMapID *mapID = [GMSMapID mapIDWithIdentifier:@"MAP_ID"]; GMSMapView *mapView = [GMSMapView mapWithFrame:CGRectZero mapID:mapID camera:[GMSCameraPosition cameraWithLatitude:40 longitude:-80 zoom:7]];
Harita özelliklerini kontrol edin
Veri kümelerinin veriye dayalı stil özellikleri,
bir harita kimliğiyle ilişkilendirildiğinden emin olun. Harita kimlikleri
telefon edebilirsiniz.
mapView.mapCapabilities
-
GMSMapView
belirli bir özelliğin (örneğin, veriye dayalı stil)
kullanılabilir.
Ayrıca,
GMSViewDelegate
.
Bu örnekte, veriye dayalı stil özelliklerini kontrol etmek için protokolün nasıl kullanılacağı gösterilmektedir
gereksinimlerini karşılayın.
Swift
class SampleViewController: UIViewController { private lazy var mapView: GMSMapView = GMSMapView(frame: .zero, mapID: GMSMapID(identifier: "YOUR_MAP_ID"), camera: GMSCameraPosition(latitude: 40, longitude: -80, zoom: 7)) override func loadView() { self.view = mapView mapView.delegate = self } } extension SampleViewController: GMSMapViewDelegate { func mapView(_ mapView: GMSMapView, didChange mapCapabilities: GMSMapCapabilityFlags) { if (!mapCapabilities.contains(.dataDrivenStyling)) { // Data-driven styling is *not* available, add a fallback. // Existing feature layers are also unavailable. } } }
Objective-C
@interface SampleViewController: UIViewController <GMSMapViewDelegate> @end @implementation SampleViewController - (void)loadView { GMSMapView *mapView = [GMSMapView mapWithFrame:CGRectZero mapID:[GMSMapID mapIDWithIdentifier:@"MAP_ID"] camera:[GMSCameraPosition cameraWithLatitude:40 longitude:-80 zoom:7]]; mapView.delegete = self; self.view = mapView; } - (void)mapView:(GMSMapView *)mapView didChangeMapCapabilities:(GMSMapCapabilityFlags)mapCapabilities { if (!(mapCapabilities & GMSMapCapabilityFlagsDataDrivenStyling)) { // Data-driven styling is *not* available, add a fallback. // Existing feature layers are also unavailable. } } @end