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