การควบคุมและท่าทางสัมผัส

จัดทุกอย่างให้เป็นระเบียบอยู่เสมอด้วยคอลเล็กชัน บันทึกและจัดหมวดหมู่เนื้อหาตามค่ากำหนดของคุณ
เลือกแพลตฟอร์ม: Android iOS JavaScript

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

ตัวอย่างโค้ด

ที่เก็บ ApiDemos ใน GitHub มีตัวอย่างที่แสดงการใช้ตัวเลือกการควบคุมและท่าทางสัมผัส

โหมด Lite สําหรับการโต้ตอบของผู้ใช้น้อยที่สุด

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

การควบคุม UI

Maps API มีการควบคุม UI ในตัวที่คล้ายกับที่คล้ายกับในแอปพลิเคชัน Google Maps บนโทรศัพท์ Android ของคุณ สลับระดับการเข้าถึงของการควบคุมเหล่านี้ได้โดยใช้คลาส UiSettings ซึ่งได้จาก GoogleMap ที่มีเมธอด GoogleMap.getUiSettings การเปลี่ยนแปลงที่ทําในชั้นเรียนนี้จะแสดงให้เห็นบนแผนที่ทันที ดูตัวอย่างฟีเจอร์เหล่านี้ได้ที่กิจกรรมการสาธิตการตั้งค่า UI ในแอปพลิเคชันตัวอย่าง

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

ตัวควบคุม UI แต่ละตําแหน่งมีตําแหน่งที่กําหนดไว้ล่วงหน้าซึ่งสัมพันธ์กับขอบของแผนที่ คุณย้ายตัวควบคุมออกจากขอบด้านบน ด้านล่าง ซ้าย หรือขวาได้โดยการเพิ่มระยะห่างจากขอบลงในออบเจ็กต์ GoogleMap

การควบคุมการซูม

Maps API มีตัวควบคุมการซูมในตัวที่ปรากฏที่มุมขวาล่างของแผนที่ ซึ่งปิดใช้อยู่โดยค่าเริ่มต้น แต่จะเปิดใช้ได้โดยการเรียก UiSettings.setZoomControlsEnabled(true)

การควบคุมการซูม

เข็มทิศ

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

เข็มทิศ

ปุ่มตําแหน่งของฉัน

ปุ่มตําแหน่งของฉันจะปรากฏที่มุมขวาบนของหน้าจอเฉพาะเมื่อคุณเปิดใช้งานเลเยอร์ "ตําแหน่งของฉัน" เท่านั้น โปรดดูรายละเอียดในคู่มือสําหรับข้อมูลตําแหน่ง

ปุ่มตําแหน่งของฉัน

เครื่องมือเลือกระดับ

โดยค่าเริ่มต้น เครื่องมือเลือกระดับ (เครื่องมือเลือกชั้น) จะปรากฏใกล้กับขอบตรงกลางด้านขวามือของหน้าจอเมื่อผู้ใช้ดูแผนที่ในอาคาร เมื่อมองเห็นแผนที่ในอาคารอย่างน้อย 2 แผนที่ เครื่องมือเลือกระดับจะมีผลกับอาคารที่กําลังโฟกัสอยู่ ซึ่งโดยปกติจะเป็นแผนที่ที่อยู่ใกล้กับศูนย์กลางของหน้าจอมากที่สุด แต่ละอาคารจะมีระดับเริ่มต้นซึ่งจะเลือกไว้เมื่อเครื่องมือเลือกปรากฏเป็นครั้งแรก ผู้ใช้เลือกระดับอื่นได้โดยเลือกจากเครื่องมือเลือก

คุณปิดใช้หรือเปิดใช้ตัวควบคุมเครื่องมือเลือกระดับได้ด้วยการเรียกใช้ GoogleMap.getUiSettings().setIndoorLevelPickerEnabled(boolean)

ซึ่งจะเป็นประโยชน์หากคุณต้องการแทนที่เครื่องมือเลือกระดับเริ่มต้นด้วยตัวเลือกของคุณเอง

เครื่องมือเลือกระดับ

แถบเครื่องมือแผนที่

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

คุณเปิดและปิดใช้แถบเครื่องมือได้โดยเรียกใช้ UiSettings.setMapToolbarEnabled(boolean)

ในแผนที่โหมด Lite แถบเครื่องมือจะยังคงเป็นอิสระจากการดําเนินการของผู้ใช้ ในแผนที่แบบอินเทอร์แอกทีฟโดยสมบูรณ์ แถบเครื่องมือจะเลื่อนเข้ามาเมื่อผู้ใช้แตะเครื่องหมายและเลื่อนออกอีกครั้งเมื่อเครื่องหมายไม่ได้โฟกัสอีกต่อไป

แถบเครื่องมือจะแสดงไอคอนที่ให้สิทธิ์เข้าถึงมุมมองแผนที่หรือคําขอเส้นทางในแอป Google Maps บนอุปกรณ์เคลื่อนที่ เมื่อผู้ใช้แตะไอคอนในแถบเครื่องมือ API จะสร้างความตั้งใจเพื่อเปิดตัวกิจกรรมที่เกี่ยวข้องในแอป Google Maps บนอุปกรณ์เคลื่อนที่

แถบเครื่องมือแผนที่

แถบเครื่องมือจะแสดงอยู่ที่ด้านขวาล่างของแผนที่ในภาพหน้าจอด้านบน ไอคอนความตั้งใจ 1 หรือ 2 ไอคอนจะปรากฏบนแผนที่ (ขึ้นอยู่กับเนื้อหาของแผนที่) และกําหนดให้แอป Google Maps บนอุปกรณ์เคลื่อนที่รองรับความตั้งใจที่เกิดขึ้น

ท่าทางสัมผัสบนแผนที่

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

คุณจะเปิดใช้/ปิดใช้ท่าทางสัมผัสด้วยคลาส UiSettings ที่ได้รับจาก GoogleMap ได้โดยการเรียกใช้ GoogleMap.getUiSettings เช่นเดียวกับการควบคุม UI การเปลี่ยนแปลงที่ทําในชั้นเรียนนี้จะแสดงให้เห็นบนแผนที่ทันที หากต้องการดูตัวอย่างฟีเจอร์เหล่านี้ ให้ดูที่กิจกรรมสาธิตการตั้งค่า UI ในแอปพลิเคชันตัวอย่าง (ดูวิธีการที่นี่)

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

ท่าทางสัมผัสการซูม

แผนที่ตอบกลับด้วยท่าทางสัมผัสต่างๆ ที่สามารถเปลี่ยนระดับการซูมของกล้องได้ ดังนี้

  • แตะสองครั้งเพื่อเพิ่มระดับการซูมขึ้น 1 ครั้ง (ซูมเข้า)
  • ใช้ 2 นิ้วแตะเพื่อลดระดับการซูมลง 1 นิ้ว (ซูมออก)
  • บีบ/กางนิ้ว 2 นิ้ว
  • ใช้ 1 นิ้วซูมด้วยการแตะ 2 ครั้งแต่ไม่ปล่อยเมื่อแตะครั้งที่ 2 จากนั้นใช้นิ้วเลื่อนขึ้นเพื่อซูมออก หรือปัดลงเพื่อซูมเข้า

คุณปิดใช้ท่าทางสัมผัสการซูมได้โดยเรียกใช้ UiSettings.setZoomGesturesEnabled(boolean) การดําเนินการนี้จะไม่ส่งผลกระทบหากผู้ใช้สามารถใช้การควบคุมการซูมเพื่อซูมเข้าและออก

เลื่อน (เลื่อน) ท่าทางสัมผัส

ผู้ใช้สามารถเลื่อน (เลื่อน) รอบแผนที่โดยการลากแผนที่ด้วยนิ้ว คุณปิดใช้การเลื่อนได้โดยโทรหา UiSettings.setScrollGesturesEnabled(boolean)

ท่าทางสัมผัสการเอียง

ผู้ใช้สามารถเอียงแผนที่โดยการวางนิ้ว 2 นิ้วบนแผนที่แล้วเลื่อนขึ้นหรือลงเพื่อเพิ่มหรือลดมุมเอียงตามลําดับ คุณปิดใช้ท่าทางสัมผัสการเอียงได้โดยเรียกใช้ UiSettings.setTiltGesturesEnabled(boolean)

หมุนท่าทางสัมผัส

ผู้ใช้สามารถหมุนแผนที่โดยวาง 2 นิ้วบนแผนที่ แล้วใช้การเคลื่อนไหว คุณปิดใช้การหมุนเวียนได้โดยการโทรหา UiSettings.setRotateGesturesEnabled(boolean)