เมื่อใช้ Maps SDK สำหรับ iOS คุณจะปรับแต่งวิธีที่ผู้ใช้โต้ตอบกับแผนที่ได้ โดยกำหนดว่าคอมโพเนนต์ UI ในตัวรายการใดจะปรากฏบนแผนที่และท่าทางสัมผัสใดที่อนุญาต
ตัวควบคุมแผนที่
Maps SDK สำหรับ iOS มีการควบคุม UI ในตัวบางอย่างที่คล้ายกับการควบคุมที่มีในแอปพลิเคชัน Google Maps สำหรับ iOS คุณสลับการแสดงผลของการควบคุมเหล่านี้ได้โดยใช้คลาส GMSUISettings
การเปลี่ยนแปลงที่ทำในชั้นนี้จะแสดงในแผนที่ทันที
เข็มทิศ
Maps SDK สำหรับ iOS มีกราฟิกเข็มทิศซึ่งจะปรากฏที่มุมขวาบนของแผนที่ในบางกรณี เข็มทิศจะปรากฏขึ้นก็ต่อเมื่อกล้องมีทิศทางที่ไม่ใช่ 0 เท่านั้น เมื่อผู้ใช้คลิกเข็มทิศ กล้องจะเคลื่อนไหวกลับไปที่ตำแหน่งที่มีทิศทางเป็น 0 (การวางแนวเริ่มต้น) และเข็มทิศจะค่อยๆ หายไปหลังจากนั้นไม่นาน
เข็มทิศจะปิดอยู่โดยค่าเริ่มต้น คุณเปิดใช้เข็มทิศได้โดยตั้งค่าพร็อพเพอร์ตี้ compassButton
ของ GMSUISettings
เป็น YES
แต่คุณไม่สามารถบังคับให้เข็มทิศแสดงอยู่เสมอ
Swift
let camera = GMSCameraPosition(latitude: 37.757815, longitude: -122.50764, zoom: 12) let mapView = GMSMapView(frame: .zero, camera: camera) mapView.settings.compassButton = true
Objective-C
GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:37.757815 longitude:-122.50764 zoom:12]; GMSMapView *mapView = [GMSMapView mapWithFrame:CGRectZero camera:camera]; mapView.settings.compassButton = YES;
ปุ่มตำแหน่งของฉัน
ปุ่มตำแหน่งของฉันจะปรากฏที่มุมขวาล่างของหน้าจอเฉพาะเมื่อเปิดใช้ปุ่มตำแหน่งของฉัน เมื่อผู้ใช้คลิกปุ่ม กล้องจะเคลื่อนไหวเพื่อโฟกัสที่ตำแหน่งปัจจุบันของผู้ใช้ หากระบบทราบตำแหน่งของผู้ใช้ในขณะนั้น คุณเปิดใช้ปุ่มได้โดยการตั้งค่าพร็อพเพอร์ตี้ myLocationButton
ของ GMSUISettings
เป็น YES
Swift
mapView.settings.myLocationButton = true
Objective-C
mapView.settings.myLocationButton = YES;
เครื่องมือเลือกพื้น
ตัวควบคุมเครื่องมือเลือกชั้นจะปรากฏที่ด้านขวาล่างของหน้าจอทุกครั้งที่แสดงแผนที่ในอาคารอย่างชัดเจน เมื่อแผนที่ในอาคาร 2 แผนที่ขึ้นไปปรากฏขึ้น เครื่องมือเลือกชั้นจะเกี่ยวข้องกับอาคารที่อยู่ใกล้กับจุดกึ่งกลางของหน้าจอมากที่สุด อาคารแต่ละหลังมีชั้นเริ่มต้นซึ่งจะเลือกไว้เมื่อเครื่องมือเลือกแสดงขึ้นเป็นครั้งแรก คุณเลือกชั้นอื่นได้โดยเลือกจากเครื่องมือเลือก
คุณปิดใช้การควบคุมเครื่องมือเลือกราคาขั้นต่ำได้โดยการตั้งค่าพร็อพเพอร์ตี้ indoorPicker
ของ GMSUISettings
เป็น NO
Swift
mapView.settings.indoorPicker = false
Objective-C
mapView.settings.indoorPicker = NO;
ท่าทางควบคุมแผนที่
คุณสามารถปิดใช้ท่าทางสัมผัสเริ่มต้นบนแผนที่ได้โดยการตั้งค่าพร็อพเพอร์ตี้ของคลาส GMSUISettings
ซึ่งใช้เป็นพร็อพเพอร์ตี้ของ GMSMapView
ได้
คุณเปิดและปิดใช้ท่าทางสัมผัสต่อไปนี้แบบเป็นโปรแกรมได้ โปรดทราบว่าการปิดใช้ท่าทางสัมผัสจะไม่จำกัดการเข้าถึงการตั้งค่ากล้องแบบเป็นโปรแกรม
scrollGestures
— ควบคุมว่าจะเปิดหรือปิดใช้ท่าทางสัมผัสในการเลื่อน หากเปิดใช้ ผู้ใช้จะปัดเพื่อเลื่อนกล้องได้zoomGestures
— ควบคุมว่าจะเปิดหรือปิดใช้ท่าทางสัมผัสเพื่อซูม หากเปิดใช้ ผู้ใช้อาจแตะสองครั้ง แตะด้วย 2 นิ้ว หรือใช้ 2 นิ้วบีบเข้าเพื่อซูมกล้อง โปรดทราบว่าการแตะสองครั้งหรือการบีบนิ้วเมื่อเปิดใช้scrollGestures
อาจทำให้กล้องเลื่อนไปยังจุดที่ระบุtiltGestures
— ควบคุมว่าจะเปิดหรือปิดใช้ท่าทางสัมผัสด้วยการเอียง หากเปิดใช้ ผู้ใช้อาจใช้ 2 นิ้วปัดขึ้นหรือลงในแนวตั้งเพื่อเอียงกล้องrotateGestures
— ควบคุมว่าจะเปิดหรือปิดใช้ท่าทางสัมผัสในการหมุน หากเปิดใช้ ผู้ใช้อาจใช้ท่าทางสัมผัสหมุนด้วย 2 นิ้วเพื่อหมุนกล้องได้
ในตัวอย่างด้านล่าง มีการปิดใช้ทั้งท่าทางสัมผัสในการเลื่อนและซูม
Swift
override func loadView() { let camera = GMSCameraPosition.camera( withLatitude: 1.285, longitude: 103.848, zoom: 12 ) let mapView = GMSMapView.map(withFrame: .zero, camera: camera) mapView.settings.scrollGestures = false mapView.settings.zoomGestures = false self.view = mapView }
Objective-C
- (void)loadView { GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:1.285 longitude:103.848 zoom:12]; GMSMapView *mapView = [GMSMapView mapWithFrame:CGRectZero camera:camera]; mapView.settings.scrollGestures = NO; mapView.settings.zoomGestures = NO; self.view = mapView; }