Maps SDK สำหรับ Android เวอร์ชัน 3.1.0 รุ่นเบต้าเป็นการใช้งานใหม่ที่มี API แพลตฟอร์มเหมือนกับเวอร์ชันก่อนหน้า (คลาสและเมธอดทั้งหมดยังคงเหมือนเดิม) และมีฟีเจอร์ใหม่ๆ ให้คุณลองใช้ ดังนี้
- การปรับแต่ง Maps
- การจัดการการชนของเครื่องหมาย
- การปรับแต่งโพลีไลน์
คู่มือนี้จะแสดงวิธีใช้ฟีเจอร์ใหม่
การปรับแต่ง Maps (เบต้า)
การจัดรูปแบบแผนที่ในระบบคลาวด์มีเครื่องมือและฟีเจอร์มากมายที่ช่วยให้คุณปรับแต่งและจัดการการจัดรูปแบบแผนที่ได้ง่ายขึ้น คุณสามารถจัดการและจัดรูปแบบแผนที่ใน Google Cloud Console ได้ แทนที่จะจัดรูปแบบให้แผนที่เป็นโค้ดโดยใช้ Maps API และ SDK สำหรับข้อมูลเพิ่มเติม ดูภาพรวมการปรับแต่งแผนที่ Android
การจัดการการชนของเครื่องหมาย (เบต้า)
คุณระบุได้ว่าตัวทำเครื่องหมายที่กำหนดเองควรลบล้างป้ายกำกับแผนที่ฐานเริ่มต้นหรือไม่เมื่อมีการชนกัน และเพื่อระบุลำดับความสำคัญที่สัมพันธ์กันระหว่างเครื่องหมายที่กำหนดเอง ดูข้อมูลเพิ่มเติมได้ที่การจัดการการชนของมาร์กเกอร์ (Android)
การปรับแต่งโพลีไลน์ (เบต้า)
วิธีการใหม่ๆ ในการปรับแต่งลักษณะที่ปรากฏของโพลีไลน์มีหลายวิธีดังนี้
- เส้นประกอบหลากสีจะตั้งส่วนของเส้นประกอบเป็นสีต่างๆ
- โพลีไลน์ไล่ระดับสีใส่สีโพลีไลน์โดยใช้การไล่ระดับสี 2 สี
- เส้นประกอบที่ประทับตราจะจัดรูปแบบเส้นประกอบโดยใช้บิตแมปซ้ำๆ
การสร้างโพลีไลน์หลากสี
คุณใช้ระยะเวลาเพื่อใส่สีส่วนต่างๆ ของเส้นประกอบแต่ละเส้นได้ โดยการสร้างวัตถุ StyleSpan
แล้วเพิ่มลงใน PolylineOptions
โดยใช้เมธอด addSpan()
หรือ addSpans()
โดยค่าเริ่มต้น แต่ละรายการในอาร์เรย์จะกำหนดสีของกลุ่มโฆษณาที่เกี่ยวข้อง ตัวอย่างต่อไปนี้แสดงการตั้งค่าสีของเซกเมนต์เพื่อสร้างเส้นที่มีเซกเมนต์สีแดงและเขียว
Kotlin
val line = map.addPolyline( PolylineOptions() .add(LatLng(47.6677146, -122.3470447), LatLng(47.6442757, -122.2814693)) .addSpan(StyleSpan(Color.RED)) .addSpan(StyleSpan(Color.GREEN)) )
Java
Polyline line = map.addPolyline(new PolylineOptions() .add(new LatLng(47.6677146,-122.3470447), new LatLng(47.6442757,-122.2814693)) .addSpan(new StyleSpan(Color.RED)) .addSpan(new StyleSpan(Color.GREEN)));
การสร้างโพลีไลน์แบบไล่ระดับสี
คุณสามารถกำหนดการไล่ระดับสีด้วยการระบุจำนวนเต็ม 32 บิต อัลฟา-แดง-เขียว น้ำเงิน (ARGB) แบบ 32 บิต เพื่อระบุสีเริ่มต้นและสิ้นสุดของเส้นโครงร่าง ตั้งค่าพร็อพเพอร์ตี้นี้ในออบเจ็กต์ตัวเลือกของรูปร่างโดยการเรียกใช้ PolylineOptions.addSpan()
ตัวอย่างต่อไปนี้แสดงการสร้างเส้นไล่ระดับสีสีแดงถึงเหลืองจากสวนสัตว์ Woodland Park Zoo ถึง Kirkland, WA
Kotlin
val line = map.addPolyline( PolylineOptions() .add(LatLng(47.6677146, -122.3470447), LatLng(47.6442757, -122.2814693)) .addSpan( StyleSpan( StrokeStyle.gradientBuilder( Color.RED, Color.YELLOW ).build() ) ) )
Java
Polyline line = map.addPolyline(new PolylineOptions() .add(new LatLng(47.6677146,-122.3470447), new LatLng(47.6442757,-122.2814693)) .addSpan(new StyleSpan(StrokeStyle.gradientBuilder(Color.RED, Color.YELLOW).build())));
การสร้างโพลีไลน์ที่ประทับตรา
คุณตั้งค่าลักษณะที่ปรากฏของโพลีไลน์เป็นพื้นผิวบิตแมปซ้ำได้ โดยสร้าง StampStyle
เป็น TextureStyle
จากนั้นตั้งค่าพร็อพเพอร์ตี้นี้ในออบเจ็กต์ตัวเลือกของรูปร่างโดยเรียกใช้ PolylineOptions.addSpan()
ดังที่แสดงด้านล่างนี้
Kotlin
val stampStyle = TextureStyle.newBuilder(BitmapDescriptorFactory.fromResource(R.drawable.walking_dot)).build() val span = StyleSpan(StrokeStyle.colorBuilder(Color.RED).stamp(stampStyle).build()) map.addPolyline( PolylineOptions() .add(LatLng(47.6677146, -122.3470447), LatLng(47.6442757, -122.2814693)) .addSpan(span) )
Java
StampStyle stampStyle = TextureStyle.newBuilder(BitmapDescriptorFactory.fromResource(R.drawable.walking_dot)).build(); StyleSpan span = new StyleSpan(StrokeStyle.colorBuilder(Color.RED).stamp(stampStyle).build()); map.addPolyline(new PolylineOptions() .add(new LatLng(47.6677146,-122.3470447), new LatLng(47.6442757,-122.2814693)) .addSpan(span));
นำเข้าไลบรารียูทิลิตีที่เข้ากันได้กับรุ่นเบต้า
หากใช้ไลบรารียูทิลิตี Google Maps Android API คุณจะต้องอัปเดตทรัพยากร Dependency ของโปรเจ็กต์เพื่อแทนที่เวอร์ชันที่มีอยู่ด้วยเวอร์ชันที่เข้ากันได้กับรุ่นเบต้า โดยทำดังนี้
- นำเข้าไลบรารี util ที่เข้ากันได้กับรุ่นเบต้าในไฟล์
build.gradle
ของคุณ:implementation 'com.google.maps.android:android-maps-utils-v3:1.3.1'
- นำรายการต่อไปนี้ออกจาก
build.gradle
เพื่อนำไลบรารียูทิลิตีที่ใช้ร่วมกับรุ่นเบต้าไม่ได้ออก:implementation 'com.google.maps.android:android-maps-utils:1.3.1'
เรียกใช้ตัวอย่าง
ที่เก็บ Google Samples บน GitHub มีตัวอย่างแอปที่สาธิตการใช้งาน SDK ของ Google Maps รุ่นเบต้าสำหรับ Android เวอร์ชัน 3.1.0
- ตัวอย่าง Maps SDK สำหรับ Android
- Places SDK สำหรับตัวอย่าง Android (สำหรับใช้กับ Maps v3.1.0 รุ่นเบต้าเท่านั้น)