באמצעות ה-SDK של מפות Google ל-Android תוכלו להתאים אישית את הדרך שבה משתמשים יכול לקיים אינטראקציה עם המפה שלך על ידי קביעת אילו מהרכיבים המובנים של ממשק המשתמש יופיעו במפה ואילו תנועות מותרות.
דוגמאות קוד
מאגר ApiDemos ב-GitHub כולל דוגמה שממחישה את השימוש באפשרויות הבקרה והתנועות:
- UiSettingsDemoActivity: דוגמת Kotlin
- UiSettingsDemoActivity: דוגמת Java
מצב בסיסי לאינטראקציה מינימלית של משתמשים
אם אתם רוצים ליצור מפה קלילה עם אינטראקציה מינימלית של המשתמש, כדאי להשתמש ב- מפה במצב קל. מצב Lite מציע תמונת מפת סיביות של מפה המיקום ורמת המרחק מהתצוגה. במצב Lite, משתמשים לא יכולים להזיז את המפה או לשנות את מרחק התצוגה שלה התנועות לא פועלות. לפרטים נוספים, אפשר לעיין במדריך למצב Lite.
פקדים בממשק המשתמש
ה-API של מפות Google כולל פקדים מובנים בממשק המשתמש, שדומים לאלה
שנמצא באפליקציית מפות Google בטלפון Android. אפשר להחליף מצב
את הרשאות הגישה לאמצעי הבקרה האלה באמצעות המחלקה UiSettings
שאפשר לקבל מ-GoogleMap
באמצעות GoogleMap.getUiSettings
. שינויים שיבוצעו בכיתה הזו יופיעו מיד במפה. שפת תרגום
דוגמה לתכונות האלה, אפשר לעיין בפעילות ההדגמה של הגדרות ממשק המשתמש
אפליקציה לדוגמה.
אפשר גם להגדיר את רוב האפשרויות האלה כשהמפה נוצרת,
באמצעות מאפייני XML או באמצעות הפונקציה GoogleMapOptions
בכיתה. פרטים נוספים זמינים במאמר הגדרת המצב הראשוני.
לכל פקד בממשק המשתמש יש מיקום שנקבע מראש ביחס לקצה המפה.
אפשר להרחיק את הפקדים מהקצה העליון, התחתון, השמאלי או הימני על ידי
הוספת מרווח פנימי לאובייקט GoogleMap
.
פקדי מרחק מתצוגה
ה-API של מפות Google כולל פקדים מובנים לשינוי מרחק התצוגה שמופיעים בתחתית המסך.
בפינה הימנית העליונה של המפה. האפשרויות האלה מושבתות כברירת מחדל, אבל אפשר
מופעל באמצעות חיוג אל UiSettings.setZoomControlsEnabled(true)
.
![אמצעי הבקרה לשינוי מרחק התצוגה בפינה השמאלית התחתונה. פקדי זום](https://google-developers.gonglchuangl.net/static/maps/documentation/android-sdk/images/zoomcontrols.png?authuser=0&hl=he)
מצפן
ה-API של מפות Google מציג גרפיקה של מצפן שמופיעה בפינה הימנית העליונה
של המפה בנסיבות מסוימות. המצפן יוצג רק פעם אחת
יופיעו כאשר המצלמה מכווננת כך שיש לה כיוון שאינו אפס, או
ללא הטיה. כשהמשתמש לוחץ על המצפן, המצלמה מבצעת אנימציה בחזרה
למיקום עם כיוון והטיה של אפס (כיוון ברירת המחדל)
והמצפן נעלם זמן קצר לאחר מכן. אפשר להשבית את המצפן
מופיע לגמרי באמצעות קריאה ל-UiSettings.setCompassEnabled(boolean)
.
עם זאת, אי אפשר לאלץ את המצפן להופיע תמיד.
![המצפן בפינה הימנית העליונה. מצפן](https://google-developers.gonglchuangl.net/static/maps/documentation/android-sdk/images/compass.png?authuser=0&hl=he)
לחצן 'המיקום שלי'
הלחצן 'המיקום שלי' מופיע בפינה השמאלית העליונה של המסך בלבד כשהשכבה שלי מופעלת. לקבלת פרטים, אפשר לעיין במדריך לגבי נתוני מיקום.
![הלחצן 'המיקום שלי' בפינה השמאלית העליונה. לחצן 'המיקום שלי'](https://google-developers.gonglchuangl.net/static/maps/documentation/android-sdk/images/mylocationbutton.png?authuser=0&hl=he)
בחירת רמה
כברירת מחדל, חלונית לבחירת קומה (בורר קומה) מופיעה ליד הפינה השמאלית העליונה קצה המסך כשהמשתמש צופה במפת פנים. כאשר שתיים או עוד מפות פנים. בורר הרמות יחול על הבניין כרגע בפוקוס, שהוא בדרך כלל זה הקרוב ביותר למרכז המסך. לכל בניין יש רמת ברירת מחדל שתיבחר כשהבורר מוצגת לראשונה. המשתמשים יכולים לבחור רמה אחרת על ידי בחירת רמה בוחר.
יש לך אפשרות להשבית או להפעיל את הבקרה של בורר הרמות באמצעות התקשרות
GoogleMap.getUiSettings().setIndoorLevelPickerEnabled(boolean)
האפשרות הזו שימושית אם רוצים להחליף את בורר ברירת המחדל ברמת המודעה שלכם.
![בוחר הרמות ליד המרכז השמאלי. בחירת רמה](https://google-developers.gonglchuangl.net/static/maps/documentation/android-sdk/images/levelpicker.png?authuser=0&hl=he)
סרגל הכלים של המפה
כברירת מחדל, סרגל כלים מופיע בפינה השמאלית התחתונה של המפה כשמשתמש מקיש על . סרגל הכלים מאפשר למשתמש גישה מהירה לאפליקציית מפות Google לנייד.
ניתן להפעיל או להשבית את סרגל הכלים באמצעות קריאה
UiSettings.setMapToolbarEnabled(boolean)
במפה במצב Lite, סרגל הכלים ממשיך להופיע בנפרד פעולות. במפה אינטראקטיבית לחלוטין, סרגל הכלים מחליק פנימה כאשר המשתמש מקיש על את הסמן ומחליקים החוצה שוב כשהסמן לא נמצא בפוקוס.
סרגל הכלים מציג סמלים שמספקים גישה לתצוגת מפה או למסלול באפליקציה לנייד של מפות Google. כשמשתמש מקיש על סמל בסרגל הכלים, ה-API יוצר כוונת רכישה להפעלת הפעילות המתאימה באפליקציה לנייד של מפות Google.
![סרגל הכלים בפינה השמאלית התחתונה. סרגל הכלים של המפה](https://google-developers.gonglchuangl.net/static/maps/documentation/android-sdk/images/intents.png?authuser=0&hl=he)
סרגל הכלים מופיע בפינה השמאלית התחתונה של המפה בצילום המסך שלמעלה. אפס, אחד מסמלי Intent או שניהם יופיעו במפה, בהתאם של המפה ובתנאי שאפליקציית מפות Google לנייד תומכת את הכוונה שמתקבלת.
תנועות במפה
מפה שנוצרה באמצעות SDK של מפות ל-Android תומכת באותן תנועות כמו את אפליקציית מפות Google. אבל, יכולים להיות מצבים שבהם תרצו כדי להשבית תנועות מסוימות כדי לשמור על מצב המפה. זום, אפשר להגדיר הזזה, הטיה וסיבוב גם באופן פרוגרמטי - אפשר לקבל פרטים נוספים על מצלמה ותצוגה. שימו לב שהשבתה של תנועות אין השפעה על האפשרות לשנות את מיקום המצלמה באופן פרוגרמטי.
כמו בפקדים בממשק המשתמש, אפשר להפעיל או להשבית תנועות באמצעות
כיתה UiSettings
שאותה אפשר לקבל מהGoogleMap
בהתקשרות אל GoogleMap.getUiSettings
. השינויים שיבוצעו בכיתה הזו
מיד משתקף במפה. כדי לראות דוגמה לתכונות האלה, אפשר:
בפעילות ההדגמה של הגדרות ממשק המשתמש באפליקציה לדוגמה (ראו
כאן כדי לקבל הסבר על ההתקנה).
ניתן גם להגדיר את האפשרויות האלה כשיוצרים את המפה באמצעות XML
מאפיינים או שימוש במחלקה GoogleMapOptions
.
לפרטים נוספים, אפשר לעיין במאמר בנושא הגדרת המפה.
תנועות לשינוי מרחק התצוגה
המפה מגיבה למגוון תנועות שיכולות לשנות את רמת הזום של המצלמה:
- אפשר להקיש הקשה כפולה כדי להגדיל את מרחק התצוגה ב-1 (התקרבות).
- הקשה עם שתי אצבעות כדי להקטין את מרחק התצוגה ב-1 (להקטין את התצוגה).
- צביטה/מתיחה של שתי אצבעות
- אצבע אחת משנה את מרחק התצוגה על ידי הקשה כפולה אבל לא משחררים אותה בהקשה השנייה, ולאחר מכן החלקת האצבע למעלה כדי להקטין, או למטה כדי להתקרב.
אפשר להשבית את תנועות הזום באמצעות התקשרות
UiSettings.setZoomGesturesEnabled(boolean)
אין לכך השפעה על
המשתמש יכול להשתמש בפקדי הזום כדי להגדיל או להקטין את התצוגה.
תנועות גלילה (הזזה)
משתמש יכול לגלול (להזיז את המפה) סביב המפה על ידי גרירת המפה עם האצבע.
אפשר להשבית את הגלילה על ידי התקשרות
UiSettings.setScrollGesturesEnabled(boolean)
תנועות הטיה
משתמש יכול להטות את המפה על ידי הצבת שתי אצבעות על המפה והזזתן למטה
או כלפי מעלה, כדי להגדיל או להקטין את זווית ההטיה, בהתאמה. אפשר
השבתה של תנועות הטיה על ידי קריאה ל-UiSettings.setTiltGesturesEnabled(boolean)
.
תנועות סיבוב
משתמש יכול לסובב את המפה על ידי הצבת שתי אצבעות על המפה והפעלת
של סיבוב התנועה. אפשר להשבית את הסיבוב באמצעות שליחת קריאה
UiSettings.setRotateGesturesEnabled(boolean)