באמצעות ה-SDK של מפות Google ל-iOS תוכלו להתאים אישית את האופן שבו המשתמשים מקיימים אינטראקציה עם המפה שלכם, ולקבוע אילו מהרכיבים המובנים בממשק המשתמש יופיעו במפה ואילו תנועות מותרות.
פקדי המפה
ה-SDK של מפות Google ל-iOS מספק כמה פקדים מובנים בממשק המשתמש, שדומים לאלה שמופיעים באפליקציה של מפות Google ל-iOS. אפשר להשבית את הרשאות הגישה לאמצעי הבקרה האלה באמצעות המחלקה GMSUISettings
.
שינויים שיבוצעו בכיתה הזו יופיעו מיד במפה.
מצפן
ה-SDK של מפות Google ל-iOS מציג גרפיקה של מצפן שמופיעה בפינה השמאלית העליונה של המפה בנסיבות מסוימות. המצפן מופיע רק כשהמצלמה מכווננת כך שיש לה כיוון שאינו אפס. כשהמשתמש לוחץ על המצפן, המצלמה מבצעת אנימציה בחזרה למיקום עם כיוון אפס (כיוון ברירת המחדל) והמצפן מתעמעם זמן קצר לאחר מכן.
המצפן מושבת כברירת מחדל. כדי להפעיל את המצפן, מגדירים את המאפיין 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;
בוחר הקומה
אמצעי הבקרה לבחירת קומה מופיע בפינה השמאלית התחתונה של המסך בכל פעם שמפת פנים מוצגת באופן בולט. כשיש שתי מפות פנים או יותר, בוחר הקומה מתייחס לבניין הקרוב ביותר למרכז המסך. לכל בניין יש קומת ברירת מחדל שנבחרה בפעם הראשונה שהבורר מוצג. אפשר לבחור קומה אחרת באמצעות הבורר.
כדי להשבית את אמצעי הבקרה של בוחר הקומות על ידי הגדרת המאפיין indoorPicker
של GMSUISettings
ל-NO
.
Swift
mapView.settings.indoorPicker = false
Objective-C
mapView.settings.indoorPicker = NO;
תנועות במפה
אפשר להשבית את תנועות ברירת המחדל במפה על ידי הגדרת המאפיינים של המחלקה GMSUISettings
, שזמינה כמאפיין של GMSMapView
.
ניתן להפעיל ולהשבית את התנועות הבאות באופן פרוגרמטי. שימו לב
שהשבתת התנועה לא תגביל את הגישה הפרוגרמטית להגדרות
המצלמה.
scrollGestures
- קובע אם תנועות גלילה מופעלות או מושבתות. אם המדיניות מופעלת, המשתמשים יכולים להחליק כדי להזיז את המצלמה.zoomGestures
- קובע אם תנועות זום מופעלות או מושבתות. אם המדיניות מופעלת, המשתמשים יכולים להקיש הקשה כפולה, להקיש בשתי אצבעות או לעשות תנועת צביטה כדי לשנות את מרחק התצוגה של המצלמה. הערה: הקשה כפולה או תנועת צביטה כשהתכונותscrollGestures
מופעלות עשויות להזיז את המצלמה לנקודה שצוינה.tiltGestures
- קובע אם תנועות הטיה יופעלו או יושבתו. אם המדיניות מופעלת, המשתמשים יכולים להחליק לאורך או למעלה בעזרת שתי אצבעות כדי להטות את המצלמה.rotateGestures
- קובע אם תנועות סיבוב מופעלות או מושבתות. אם ההגדרה הזו מופעלת, המשתמשים יכולים לבצע תנועת סיבוב בעזרת שתי אצבעות כדי לסובב את המצלמה.
בדוגמה הבאה, התנועות להזזה ולזום הושבתו.
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; }