เริ่มใช้งาน

เลือกแพลตฟอร์ม: Android iOS JavaScript

ทำตามขั้นตอนต่อไปนี้เพื่อตั้งค่าการจัดรูปแบบตามข้อมูลสำหรับขอบเขต

เปิดใช้ตัวแสดงผลแผนที่ใหม่

ตัวแสดงผลแผนที่ที่อัปเกรดแล้วพร้อมให้บริการใน Maps SDK สำหรับ Android เวอร์ชัน 18.0.0 เป็นต้นไป โหมดแสดงภาพนี้มีการปรับปรุงมากมาย รวมถึงการรองรับการจัดรูปแบบแผนที่ในระบบคลาวด์ใน Maps SDK สำหรับ Android

เมื่อเปิดตัว Maps SDK สำหรับ Android เวอร์ชัน 18.2.0 Google ได้เปลี่ยนตัวแสดงผลเริ่มต้นจากตัวแสดงผลเดิมเป็นตัวแสดงผลแผนที่ที่อัปเกรดแล้ว การเปลี่ยนแปลงนี้หมายความว่าตอนนี้แอปของคุณจะใช้ตัวแสดงผลแผนที่ที่อัปเกรดแล้วโดยค่าเริ่มต้นเมื่อคุณสร้างแอปใหม่หรือสร้างแอปที่มีอยู่อีกครั้ง

สร้างรหัสแผนที่

หากต้องการสร้างรหัสแผนที่ใหม่ ให้ทำตามขั้นตอนที่ สร้างรหัสแผนที่ ตรวจสอบว่าคุณได้ตั้งค่าประเภทแผนที่เป็น Android

สร้างรูปแบบแผนที่ใหม่

หากต้องการสร้างรูปแบบแผนที่ใหม่ ให้ทำตามวิธีการในจัดการรูปแบบแผนที่ เพื่อสร้างรูปแบบ และเชื่อมโยงรูปแบบกับรหัสแผนที่ที่คุณเพิ่งสร้าง

เลือกเลเยอร์ฟีเจอร์ในรูปแบบแผนที่ใหม่

ในคอนโซล Google API คุณสามารถเลือกเลเยอร์ฟีเจอร์ที่จะแสดงสำหรับรูปแบบแผนที่ใหม่ได้ เลเยอร์ของฟีเจอร์จะเป็นตัวกำหนดขอบเขตประเภทใดที่จะปรากฏบนแผนที่ (เช่น ท้องถิ่น รัฐ และอื่นๆ)

  1. ไปที่หน้า "รูปแบบแผนที่" ในคอนโซล Google API
  2. เลือกโปรเจ็กต์หากได้รับข้อความแจ้ง
  3. เลือกรูปแบบแผนที่
  4. คลิกเมนูแบบเลื่อนลงเลเยอร์ฟีเจอร์ เพื่อเพิ่มหรือนำเลเยอร์ออก
  5. คลิกบันทึก เพื่อบันทึกการเปลี่ยนแปลงและทำให้การเปลี่ยนแปลงพร้อมใช้งานในแผนที่

ภาพหน้าจอแสดงเมนูแบบเลื่อนลง

อัปเดตโค้ดการเริ่มต้นแผนที่

ขั้นตอนนี้ต้องใช้รหัสแผนที่ที่คุณเพิ่งสร้าง ซึ่งจะอยู่ในหน้า การจัดการ Maps

หากต้องการเพิ่มรหัสแผนที่ลงในโค้ดการเริ่มต้น โปรดดู เพิ่มรหัสแผนที่ลงในแอป

รับสิทธิ์เข้าถึงเลเยอร์ฟีเจอร์ของแผนที่

คุณใช้ 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 แล้ว คุณจะใช้การจัดรูปแบบกับรูปหลายเหลี่ยมขอบเขตในฟีเจอร์นั้นได้

ตรวจสอบความสามารถของแผนที่ (ต้องทำ)

การจัดรูปแบบตามข้อมูลสำหรับขอบเขตต้องใช้รหัสแผนที่ หากไม่มีรหัสแผนที่หรือมีการส่งรหัสแผนที่ที่ไม่ถูกต้อง การจัดรูปแบบตามข้อมูลสำหรับขอบเขตจะโหลดไม่ได้ คุณสามารถใช้ 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());