เริ่มเลย

เลือกแพลตฟอร์ม แอนดรอยด์ 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());