開始使用

選取平台: Android iOS JavaScript

如要設定界線資料導向樣式,請按照下列步驟操作。

啟用新版地圖轉譯器

自 Maps SDK for Android 18.0.0 版起,您可以使用升級版地圖轉譯器。這個轉譯器為 Maps SDK for Android 帶來多項改善,包括支援雲端式地圖樣式設定。

隨著 Maps SDK for Android 18.2.0 版推出,Google 將預設轉譯器從舊版改為升級版地圖轉譯器。也就是說,當您建立新應用程式或重建現有應用程式時,現在預設使用的是升級版地圖轉譯器。

建立地圖 ID

如要建立新的地圖 ID,請按照「建立地圖 ID」一文中的步驟操作。請務必將地圖類型設定為 Android

建立新地圖樣式

如要建立新地圖樣式,請按照「管理地圖樣式」一文中的說明操作,並將樣式與剛建立的地圖 ID 建立關聯

在新地圖樣式中選取地圖項目圖層

在 Google API 控制台中,您可以選取要顯示哪些地圖項目圖層 可以建立新的地圖樣式地圖項目圖層會決定哪些界線類型 會出現在地圖上 (例如縣市、州/省等等)。

  1. 在 Google API 控制台中,前往「地圖樣式」頁面
  2. 畫面出現提示時,請選取專案。
  3. 選取地圖樣式。
  4. 按一下「地圖項目圖層」下拉式選單,即可新增或移除圖層。
  5. 按一下「儲存」,即可儲存您所做的變更並套用到地圖。

顯示下拉式選單的螢幕截圖。

更新地圖初始化程式碼

這個步驟需要使用您剛建立的地圖 ID,請前往 地圖管理頁面。

如要在初始化程式碼中加入地圖 ID,請參閱「在應用程式中加入地圖 ID」一文。

使用地圖地圖項目圖層

您使用 FeatureLayer 物件,以代表地圖中每個地圖項目圖層,如:郵遞區號或 縣市地圖項目圖層。如要存取地圖項目圖層物件,請呼叫 GoogleMap.getFeatureLayer() 地圖初始化時:

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()) ... }

傳遞 FeatureLayerOptions getFeatureLayer() 物件,用於指定地圖項目圖層的類型。在本 例如,您必須存取 POSTAL_CODE 層。建立不同的 FeatureLayer 物件。

取得 FeatureLayer 物件後,您就可以將樣式套用至 就會建立界線多邊形

檢查地圖功能 (必要)

界線資料導向樣式需要地圖 ID。如果地圖 ID 缺少或 傳遞的地圖 ID 無效,因此無法載入界線資料導向樣式。身為 疑難排解步驟,在 MapCapabilities 檢查是否支援界線資料導向樣式。

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());