באמצעות ה-SDK של מפות ל-Android, אתם יכולים לקבוע אילו מרכיבי ממשק המשתמש המובנים יופיעו במפה ואילו תנועות מותרות, וכך להתאים אישית את האופן שבו המשתמשים יכולים לקיים אינטראקציה עם המפה.
דוגמאות קוד
המאגר ApiDemos ב-GitHub כולל דוגמה שממחישה את השימוש באפשרויות הבקרה והמחוות:
- UiSettingsDemoActivity: דוגמה ל-Kotlin
- UiSettingsDemoActivity: דוגמה ב-Java
מצב Lite עם אינטראקציה מינימלית של משתמשים
אם אתם רוצים להשתמש במפה קלה עם אינטראקציה מינימלית של משתמשים, מומלץ להשתמש במפה במצב טעינה מהירה. במצב בסיסי מוצגת תמונה בפורמט בייטמאפ של מפה במיקום וברמת זום מסוימים. במצב בסיסי, המשתמשים לא יכולים להזיז את המפה או לשנות את מרחק התצוגה שלה, והתנועות לא פועלות. פרטים נוספים זמינים במדריך בנושא מצב בסיסי.
פקדים בממשק המשתמש
ב-Maps API יש אמצעי בקרה מובנים לממשק המשתמש, שדומים לאלה שנמצאים באפליקציית מפות Google בטלפון Android. אפשר להחליף את החשיפה של אמצעי הבקרה האלה באמצעות הכיתה UiSettings
, שאפשר לקבל מ-GoogleMap
באמצעות השיטה GoogleMap.getUiSettings
. שינויים שמתבצעים בקטגוריה הזו משתקפים במפה באופן מיידי. כדי לראות דוגמה לתכונות האלה, אפשר לעיין בפעילות הדגמה של הגדרות ממשק המשתמש באפליקציה לדוגמה.
אפשר גם להגדיר את רוב האפשרויות האלה כשיוצרים את המפה, באמצעות מאפייני XML או באמצעות הכיתה GoogleMapOptions
. פרטים נוספים זמינים במאמר הגדרת מצב ראשוני.
לכל אמצעי בקרה בממשק המשתמש יש מיקום מוגדר מראש ביחס לקצה המפה.
כדי להרחיק את אמצעי הבקרה מהקצה העליון, התחתון, השמאלי או הימני, מוסיפים רווח לאובייקט GoogleMap
.
פקדי שינוי מרחק התצוגה
ב-Maps API יש פקדי זום מובנים שמופיעים בפינה השמאלית התחתונה של המפה. התכונות האלה מושבתות כברירת מחדל, אבל אפשר להפעיל אותן באמצעות קריאה לפונקציה UiSettings.setZoomControlsEnabled(true)
.
מצפן
ב-Maps API יש גרפיקה של מצפן שמופיעה בפינה הימנית העליונה של המפה בנסיבות מסוימות. מצפן יופיע רק כשהמצלמה מוכוונת כך שיש לה כיוון או שיפוע שאינם אפס. כשהמשתמש לוחץ על המצפן, המצלמה חוזרת לתנועה עם כיוון וזווית הטיה של אפס (הכיוון שמוגדר כברירת מחדל) והמצפן נעלם זמן קצר לאחר מכן. כדי להשבית את הצגת המצפן לגמרי, אפשר להפעיל את הפקודה UiSettings.setCompassEnabled(boolean)
.
עם זאת, אי אפשר לאלץ את מצפן המפה להופיע תמיד.
לחצן 'המיקום שלי'
הלחצן 'המיקום שלי' מופיע בפינה השמאלית העליונה של המסך רק כשהשכבה 'המיקום שלי' מופעלת. פרטים נוספים זמינים במדריך בנושא נתוני מיקום.
בורר רמות
כברירת מחדל, בורר קומות מופיע ליד הקצה הימני המרכזי של המסך כשהמשתמש מציג מפה פנימית. כשמוצגות שתי מפות פנימיות או יותר, בורר הקומות יחול על המבנה שנמצא כרגע במוקד, בדרך כלל זה הקרוב ביותר למרכז המסך. לכל בניין יש רמת ברירת מחדל שתיבחר כשחלון הבחירה יוצג בפעם הראשונה. המשתמשים יכולים לבחור רמה אחרת באמצעות הבורר.
אפשר להשבית או להפעיל את הלחצן לבחירת רמה באמצעות הקריאה GoogleMap.getUiSettings().setIndoorLevelPickerEnabled(boolean)
.
האפשרות הזו מועילה אם רוצים להחליף את בורר הרמות שמוגדר כברירת מחדל בבורר רמות משלכם.
סרגל הכלים של המפה
כברירת מחדל, סרגל כלים מופיע בפינה השמאלית התחתונה של המפה כשמשתמש מקייש על סימן. בסרגל הכלים יש גישה מהירה לאפליקציית מפות Google לנייד.
אפשר להפעיל או להשבית את סרגל הכלים באמצעות קריאה ל-UiSettings.setMapToolbarEnabled(boolean)
.
במפה במצב בסיסי, סרגל הכלים נשאר מוצג ללא קשר לפעולות של המשתמש. במפה אינטראקטיבית במלואה, סרגל הכלים מחליק פנימה כשהמשתמש מקייש על סמן, ומחליק החוצה שוב כשהסמן כבר לא במוקד.
בסרגל הכלים מוצגים סמלים שמספקים גישה לתצוגת מפה או לבקשת מסלול באפליקציה לנייד של מפות Google. כשמשתמש מקשיב על סמל בסרגל הכלים, ה-API יוצר כוונה להפעלת הפעילות המתאימה באפליקציה לנייד של מפות Google.
סרגל הכלים מופיע בפינה השמאלית התחתונה של המפה בצילום המסך שלמעלה. אף אחד, אחד או שני סמלי הכוונה יופיעו במפה, בהתאם לתוכן שלה ובתנאי שאפליקציית מפות Google לנייד תומכת בכוונה שנוצרה.
תנועות במפה
מפה שנוצרה באמצעות SDK של מפות ל-Android תומכת באותן תנועות כמו באפליקציית מפות Google. עם זאת, יכול להיות שתצטרכו להשבית תנועות מסוימות כדי לשמור על המצב של המפה. אפשר גם להגדיר את מרחק התצוגה, ההזזה, ההטיה והכיוון באופן פרוגרמטי. פרטים נוספים זמינים בקטע מצלמה ותצוגה. חשוב לזכור שהשבתה של התנועות לא משפיעה על היכולת לשנות את מיקום המצלמה באופן פרוגרמטי.
בדומה לאמצעי הבקרה בממשק המשתמש, אפשר להפעיל או להשבית את התנועות באמצעות הכיתה UiSettings
, שאפשר לקבל מ-GoogleMap
באמצעות קריאה ל-GoogleMap.getUiSettings
. שינויים שיבוצעו בקטגוריה הזו יופיעו במפה באופן מיידי. כדי לראות דוגמה לתכונות האלה, אפשר לעיין בפעילות הדגמה של הגדרות ממשק המשתמש באפליקציית הדוגמה (כאן מוסבר איך להתקין אותה).
אפשר גם להגדיר את האפשרויות האלה בזמן יצירת המפה, באמצעות מאפייני XML או באמצעות הכיתה GoogleMapOptions
.
פרטים נוספים זמינים במאמר הגדרת המפה.
תנועות זום
המפה מגיבה למגוון תנועות שיכולות לשנות את רמת הזום של המצלמה:
- מקישים הקשה כפולה כדי להגדיל את מרחק התצוגה ב-1 (להתקרב).
- הקשה עם שתי אצבעות כדי להקטין את מרחק התצוגה ב-1 (הקטנת התצוגה).
- צביטה/מתיחה עם שתי אצבעות
- שינוי מרחק התצוגה באצבע אחת: מקישים פעמיים על המסך בלי להרים את האצבע בהקשה השנייה, ואז מחליקים את האצבע למעלה כדי להקטין את התצוגה או למטה כדי להגדיל אותה.
כדי להשבית את תנועות הזום, אפשר להתקשר למספר UiSettings.setZoomGesturesEnabled(boolean)
. השינוי הזה לא ישפיע על היכולת של המשתמשים להשתמש בפקדי הזום כדי להגדיל או להקטין את התצוגה.
תנועות גלילה (הזזה)
משתמשים יכולים לגלול (לזוז) במפה על ידי גרירה של המפה עם האצבע.
כדי להשבית את הגלילה, אפשר להתקשר למספר UiSettings.setScrollGesturesEnabled(boolean)
.
תנועות הטיה
משתמשים יכולים להטות את המפה על ידי הנחת שתי אצבעות על המפה והזזתן למטה או למעלה יחד כדי להגדיל או להקטין את זווית ההטיה, בהתאמה. כדי להשבית את תנועות ההטיה, צריך להפעיל את הפונקציה UiSettings.setTiltGesturesEnabled(boolean)
.
תנועות סיבוב
כדי לסובב את המפה, המשתמש צריך להניח שתי אצבעות על המפה ולבצע תנועת סיבוב. כדי להשבית את הסיבוב, אפשר להתקשר למספר UiSettings.setRotateGesturesEnabled(boolean)
.