סקירה כללית
זוהי המחלקה הראשית של ה-SDK של מפות Google ל-iOS ונקודת הכניסה לכל השיטות הקשורות למפה.
המפה צריכה ליצור מופע דרך אחד מה-constructors -init או -initWithOptions:.
ניתן לקרוא ולשנות את GMSMapView רק מה-thread הראשי, בדומה לכל האובייקטים ב-UIKit. קריאה לשיטות האלה משרשור אחר תוביל להתנהגות חריגה או לא מוגדרת.
פונקציות של חברי ציבור | |
(instancetype) | - init |
מופעל עם CGRectZero ואפשרויות ברירת המחדל. | |
(instancetype) | - initWithOptions: |
יצירה של תצוגת מפה חדשה עם האפשרויות הנתונות. | |
(instancetype) | - initWithFrame: |
(instancetype) | - initWithCoder: |
(instancetype) | - initWithFrame:camera: |
יוצרת ומחזירה תצוגת מפה, עם מסגרת ויעד מצלמה. | |
(instancetype) | - initWithFrame:mapID:camera: |
בונה ומחזיר תצוגת מפה באמצעות מסגרת, מזהה מפה ויעד מצלמה. | |
(void) | - startRendering |
מורה למפה זו להפעיל את כלי הרינדור שלה. | |
(void) | - stopRendering |
מורה למפה זו לכבות את הכלי לעיבוד. | |
(void) | - ניקוי |
פעולה זו מנקה את כל תגי העיצוב שנוספו למפה, כולל סמנים, קווים מרובים ושכבות-על של קרקע. | |
(void) | – setMinZoom:maxZoom: |
הגדרה של minZoom ושל maxZoom . | |
(nullable GMSCameraPosition *) | - cameraForBounds:insets: |
בניית GMSCameraPosition שמציגה את bounds עם padding . | |
(void) | - העברה של המצלמה: |
שינוי המצלמה בהתאם לupdate . | |
(BOOL) | - areEqualForRenderingPosition:position: |
בדקו אם מיקומי המצלמה שצוינו יגרמו למעשה לעיבוד זהה של המצלמה, תוך התחשבות ברמת הדיוק ובטרנספורמציות שבהן נעשה שימוש פנימי. | |
(GMSFeatureLayer < GMSPlaceFeature * > *) | - featureLayerOfFeatureType: |
מחזירה שכבת תכונות מהסוג שצוין. | |
(void) | - animateTocameraPosition: |
יוצר אנימציה של המצלמה במפה הזו ל-cameraPosition . | |
(void) | - animateToLocation: |
כ-animateTocameraPosition:, אבל משנה רק את מיקום המצלמה (כלומר מהמיקום הנוכחי לlocation ). | |
(void) | - animateToZoom: |
כ-animateTocameraPosition:, אבל משנה רק את רמת הזום של המצלמה. | |
(void) | - animateToBearing: |
כ-animateTocameraPosition:, אבל משנה רק את כיוון המצלמה (במעלות). | |
(void) | - animateToViewingAngle: |
כ-animateTocameraPosition:, אבל משנה רק את זווית הצפייה של המצלמה (במעלות). | |
(void) | - animateWithcameraUpdate: |
מחיל את cameraUpdate על המצלמה הנוכחית, ולאחר מכן משתמש בתוצאה לפי animateTocameraPosition: | |
פונקציות סטטיות של חברים ציבוריים | |
(instancetype) | + mapWithFrame:camera: |
יוצרת ומחזירה תצוגת מפה באמצעות מסגרת ויעד מצלמה. | |
(instancetype) | + mapWithFrame:mapID:camera: |
מאתחל נוחות ליצירה ולהחזרה של תצוגת מפה עם מסגרת, מזהה מפה ויעד מצלמה. | |
נכסים | |
מזהה IBOutlet< GMSMapViewDelegate > | להאציל סמכויות |
משתמש ב-GMSMapView. | |
GMSCameraPosition * | מצלמה |
שולטת במצלמה, שמגדירה את כיוון המפה. | |
GMSProjection * | תחזית |
מחזירה אובייקט GMSProjection שניתן להשתמש בו כדי להמיר קואורדינטות של מסך לקואורדינטות של קווי אורך/רוחב. | |
בול (BOOL) | myLocationEnabled |
המדיניות הזו קובעת אם הנקודה ומעגל הדיוק של 'המיקום שלי' מופעלים. | |
ניקוי המיקום * | myLocation |
אם 'המיקום שלי' מופעל, חושף את המיקום שבו משורטטים נקודה של מיקום המכשיר. | |
GMSMarker * | selectedMarker |
הסמן שנבחר. | |
בול (BOOL) | trafficEnabled |
המדיניות הזו קובעת אם נתוני התנועה יופיעו במפה, אם הם זמינים. | |
GMSMapViewType | mapType |
שליטה בסוג אריחי המפה שיוצגו. | |
GMSMapStyle * | mapStyle |
שליטה בסגנון המפה. | |
float | minZoom |
זום מינימלי (המרחק הגדול ביותר בין המצלמה יכול להיות מוקטן). | |
float | maxZoom |
זום מקסימלי (המצלמה הקרובה ביותר יכולה להיות לכדור הארץ). | |
בול (BOOL) | buildingsEnabled |
אם המדיניות מוגדרת, בניינים בתלת ממד יוצגו במקומות שבהם האפשרות זמינה. | |
בול (BOOL) | indoorEnabled |
המדיניות הזו מגדירה אם מפות פנים מוצגות, במקומות שבהם הן זמינות. | |
GMSIndoorDisplay * | indoorDisplay |
מקבל את המופע של GMSIndoorDisplay שמאפשר לצפות בהיבטים של תצוגת נתונים פנימית או לשלוט בהם. | |
GMSUISettings * | הגדרות |
מקבל את האובייקט GMSUISettings ששולט בהגדרות ממשק המשתמש של המפה. | |
UIEdgeInsets | מרווח פנימי |
ההגדרה קובעת את האזור ה 'גלוי' בתצוגה. | |
GMSMapViewPaddingAdjustmentBehavior | paddingAdjustmentBehavior |
ההגדרה קובעת איך תתבצע הוספה של אובייקטים מסוג אזור בטוח לערכי המרווח הפנימי. | |
בול (BOOL) | accessibilityElementsHidden |
ברירת המחדל היא YES. | |
GMSMapLayer * | שכבה |
רכיב גישה לסוג CALayer המותאם אישית שמשמש לשכבה. | |
GMSFrameRate | preferredFrameRate |
ההגדרה קובעת את קצב הפריימים של הרינדור. | |
GMSCoordinateBounds * | cameraTargetBounds |
אם לא אפס, מגביל את יעד המצלמה כך שתנועות לא יגרמו ליציאה מהגבולות שצוינו. | |
GMSMapCapabilityFlags | mapCapabilities |
כל היכולות הזמינות לפי תנאים (תלויות ב-mapID או בהגדרות מפה אחרות) שזמינות כרגע. | |
פונקציות קשורות | |
(חשוב לזכור שאלה לא פונקציות חבר). | |
NSString *const | kGMSAccessibilityCompass |
מזהה נגישות ללחצן המצפן. | |
NSString *const | kGMSAccessibilityMyLocation |
מזהה נגישות ללחצן 'המיקום שלי'. | |
NSString *const | kGMSAccessibilityOutOfQuota |
מזהה נגישות לתווית השגיאה 'חריגה מהמכסה'. |
תיעוד לגבי פונקציות חברים
- (instancetype) init |
מופעל עם CGRectZero ואפשרויות ברירת המחדל.
- (instancetype) initWithOptions: | (nonnull GMSMapViewOptions *) | אפשרויות |
יצירה של תצוגת מפה חדשה עם האפשרויות הנתונות.
הערך של אובייקט האפשרויות מועתק בשיטה הזו.
- (instancetype) initWithFrame: | (CGRect) | מסגרת |
- (instancetype) initWithCoder: | (NSCoder *) | מתכנתים |
+ (instancetype) mapWithFrame: | (CGRect) | מסגרת | |
מצלמה: | (GMSCameraPosition *) | מצלמה | |
יוצרת ומחזירה תצוגת מפה באמצעות מסגרת ויעד מצלמה.
+ (instancetype) mapWithFrame: | (CGRect) | מסגרת | |
מזהה מפה: | (GMSMapID *) | mapID | |
מצלמה: | (GMSCameraPosition *) | מצלמה | |
מאתחל נוחות ליצירה ולהחזרה של תצוגת מפה עם מסגרת, מזהה מפה ויעד מצלמה.
- (instancetype) initWithFrame: | (CGRect) | מסגרת | |
מצלמה: | (GMSCameraPosition *) | מצלמה | |
יוצרת ומחזירה תצוגת מפה, עם מסגרת ויעד מצלמה.
- הערה:
- האפשרות הזו הוצאה משימוש. במקומו צריך להשתמש ב- -init או ב- -initWithOptions: .
- (instancetype) initWithFrame: | (CGRect) | מסגרת | |
מזהה מפה: | (GMSMapID *) | mapID | |
מצלמה: | (GMSCameraPosition *) | מצלמה | |
בונה ומחזיר תצוגת מפה באמצעות מסגרת, מזהה מפה ויעד מצלמה.
- הערה:
- האפשרות הזו הוצאה משימוש. במקומו צריך להשתמש ב- -init או ב- -initWithOptions: .
- (בטל) startRendering |
מורה למפה זו להפעיל את כלי הרינדור שלה.
זהו שדה אופציונלי ואידמפונטי.
- הערה:
- האפשרות הזו הוצאה משימוש. השיטה הזו מיושנת ותוסר בגרסה עתידית.
- (ריק) stopRendering |
מורה למפה זו לכבות את הכלי לעיבוד.
זהו שדה אופציונלי ואידמפונטי.
- הערה:
- האפשרות הזו הוצאה משימוש. השיטה הזו מיושנת ותוסר בגרסה עתידית.
- (void) ברור |
פעולה זו מנקה את כל תגי העיצוב שנוספו למפה, כולל סמנים, קווים מרובים ושכבות-על של קרקע.
פעולה זו לא תנקה את נקודת המיקום הגלויה או תאפס את סוג המפה הנוכחי.
- (void) setMinZoom: | (float) | minZoom | |
maxZoom: | (float) | maxZoom | |
הגדרה של minZoom
ושל maxZoom
.
השיטה הזו תצפה שהמינימום יהיה קטן מהערך המקסימלי או שווה לו, ובמקרה כזה, תשמיע חריג בשם NSRange לחריגה.
- (nullable GMSCameraPosition *) cameraForBounds: | (GMSCoordinateBounds *) | גבולות | |
insets: | (UIEdgeInsets) | insets | |
בניית GMSCameraPosition שמציגה את bounds
עם padding
.
למצלמה יהיו מסבים והטיה באפס (כלומר, פונה צפונה ומסתכלת ישירות על כדור הארץ). נלקחים בחשבון המסגרת והמרווח הפנימי של GMSMapView.
אם הגבולות לא תקינים, השיטה הזו תחזיר מצלמת אפס.
- (לא בתוקף) movecamera: | (GMSCameraUpdate *) | עדכון |
שינוי המצלמה בהתאם לupdate
.
שינוי המצלמה הוא מיידי (ללא אנימציה).
- (BOOL) areEqualForRenderingPosition: | (GMSCameraPosition *) | מיקום | |
מיקום: | (GMSCameraPosition *) | otherPosition | |
בדקו אם מיקומי המצלמה שצוינו יגרמו למעשה לעיבוד זהה של המצלמה, תוך התחשבות ברמת הדיוק ובטרנספורמציות שבהן נעשה שימוש פנימי.
- (GMSFeatureLayer<GMSPlaceFeature *> *) featureLayerOfFeatureType: | (GMSFeatureType) | featureType |
מחזירה שכבת תכונות מהסוג שצוין.
צריך להגדיר את שכבות התכונות במסוף Cloud.
אם שכבה מהסוג שצוין לא קיימת במפה הזו, או אם סגנון מבוסס-נתונים לא מופעל, או אם לא נעשה שימוש ב-framework לעיבוד מתכות, השכבה שתתקבל תהיה זמינה מסוג NO
ולא תגיב לקריאות כלשהן.
נדרש הכלי לרינדור מתכת. בכתובת https://developers.google.com/maps/documentation/ios-sdk/config#use-metal תוכלו ללמוד איך מפעילים את המטאל
- (ריק) animateTocameraPosition: | (GMSCameraPosition *) | cameraPosition |
יוצר אנימציה של המצלמה במפה הזו ל-cameraPosition
.
- (ריק) animateToLocation: | (CLLocationCoordinate2D) | מיקום |
כ-animateTocameraPosition:, אבל משנה רק את מיקום המצלמה (כלומר מהמיקום הנוכחי לlocation
).
- (בטל) animateToZoom: | (float) | שינוי מרחק התצוגה |
כ-animateTocameraPosition:, אבל משנה רק את רמת הזום של המצלמה.
הערך הזה מוגבל על ידי [kGMSMinZoomLevel, kGMSMaxZoomLevel].
- (ריק) animateToBearing: | (CLLocationDirection) | נושא |
כ-animateTocameraPosition:, אבל משנה רק את כיוון המצלמה (במעלות).
אפס מציין את הצפון האמיתי.
- (ריק) animateToViewingAngle: | (כפול) | viewingAngle |
כ-animateTocameraPosition:, אבל משנה רק את זווית הצפייה של המצלמה (במעלות).
הערך הזה יהיה מוצמד למינימום של אפס (כלומר, פונה ישר למטה) ובין 30 ל-45 מעלות לכיוון האופק, בהתאם לקרבה היחסית לכדור הארץ.
- (ריק) animateWithcameraUpdate: | (GMSCameraUpdate *) | cameraUpdate |
מחיל את cameraUpdate
על המצלמה הנוכחית, ולאחר מכן משתמש בתוצאה לפי animateTocameraPosition:
תיעוד של חברים ופונקציות קשורות
- (NSString* const) kGMSAccessibilityCompass [related] |
מזהה נגישות ללחצן המצפן.
- (NSString* const) kGMSAccessibilityMyLocation [related] |
מזהה נגישות ללחצן 'המיקום שלי'.
- (NSString* const) kGMSAccessibilityOutOfQuota [related] |
מזהה נגישות לתווית השגיאה 'חריגה מהמכסה'.
מסמכי תיעוד לגבי הנכס
- (מזהה IBOutlet id<GMSMapViewDelegate>) להאציל [read, write, assign] |
משתמש ב-GMSMapView.
- (GMSCameraPosition*) מצלמה [read, write, copy] |
שולטת במצלמה, שמגדירה את כיוון המפה.
שינוי הנכס הזה מתבצע באופן מיידי.
- (GMSProjection*) הקרנה [read, assign] |
מחזירה אובייקט GMSProjection שניתן להשתמש בו כדי להמיר קואורדינטות של מסך לקואורדינטות של קווי אורך/רוחב.
זוהי תמונת מצב של ההקרנה הנוכחית, והיא לא תתעדכן באופן אוטומטי כשהמצלמה תזיז. היא מייצגת את היטל הפריים האחרון שצויר ב-GMSMapView, או את הפריים הבא שבו המצלמה הוגדרה באופן מפורש או שהמפה נוצרה זה עתה. הערך לעולם לא יהיה אפס.
- (BOOL) myLocationEnabled [read, write, assign] |
המדיניות הזו קובעת אם הנקודה ומעגל הדיוק של 'המיקום שלי' מופעלים.
ברירת המחדל היא NO.
- (CLLocation*) myLocation [read, assign] |
אם 'המיקום שלי' מופעל, חושף את המיקום שבו משורטטים נקודה של מיקום המכשיר.
אם הוא מושבת, או מופעל אבל אין נתוני מיקום זמינים, הערך יהיה אפס. המאפיין הזה ניתן למדידה באמצעות KVO.
- (GMSMarker*) selectedMarker [read, write, assign] |
הסמן שנבחר.
הגדרת הנכס הזה בוחרת סמן מסוים, שמציג חלון מידע עליו. אם המאפיין הזה אינו אפס, הגדרתו כאפס מבטלת את הבחירה בסמן ומסתירה את חלון המידע. המאפיין הזה ניתן למדידה באמצעות KVO.
- (BOOL) trafficEnabled [read, write, assign] |
המדיניות הזו קובעת אם נתוני התנועה יופיעו במפה, אם הם זמינים.
בכפוף לזמינות של נתוני תנועה. ברירת המחדל היא NO.
- (GMSMapViewType) mapType [read, write, assign] |
שליטה בסוג אריחי המפה שיוצגו.
ברירת המחדל היא kGMSTypeNormal.
- (GMSMapStyle*) mapStyle [read, write, assign] |
שליטה בסגנון המפה.
ערך nameStyle אינו אפס יחול רק אם mapType הוא 'רגיל'.
- (צף) minZoom [read, assign] |
זום מינימלי (המרחק הגדול ביותר בין המצלמה יכול להיות מוקטן).
ברירת המחדל היא kGMSMinZoomLevel. השתנה באמצעות -setMinZoom:maxZoom:.
- (צף) maxZoom [read, assign] |
זום מקסימלי (המצלמה הקרובה ביותר יכולה להיות לכדור הארץ).
ברירת המחדל היא kGMSMaxZoomLevel. השתנה באמצעות -setMinZoom:maxZoom:.
- (BOOL) buildingsEnabled [read, write, assign] |
אם המדיניות מוגדרת, בניינים בתלת ממד יוצגו במקומות שבהם האפשרות זמינה.
ברירת המחדל היא YES.
זו אפשרות שימושית כשמוסיפים למפה שכבת משבצות בהתאמה אישית, כדי שהיא תהיה ברורה יותר כשמרחק התצוגה יהיה גבוה. שינוי הערך הזה יגרום לביטול התוקף של כל המשבצות לזמן קצר.
- (BOOL) indoorEnabled [read, write, assign] |
המדיניות הזו מגדירה אם מפות פנים מוצגות, במקומות שבהם הן זמינות.
ברירת המחדל היא YES.
אם המדיניות מוגדרת כ-NO, קבצים שמורים של נתונים פנימיים עשויים להימחק לצמיתות וכל קומה שנבחרה על ידי משתמש הקצה עשויה להתאפס.
- (GMSIndoorDisplay*) indoorDisplay [read, assign] |
מקבל את המופע של GMSIndoorDisplay שמאפשר לצפות בהיבטים של תצוגת נתונים פנימית או לשלוט בהם.
- (GMSUISettings*) הגדרות [read, assign] |
מקבל את האובייקט GMSUISettings ששולט בהגדרות ממשק המשתמש של המפה.
- (UIEdgeInsets) מרווח פנימי [read, write, assign] |
ההגדרה קובעת את האזור ה 'גלוי' בתצוגה.
על ידי החלת מרווח פנימי סביב קצה התצוגה, ניתן ליצור אזור שיכלול נתוני מפה אך לא יכלול פקדים של ממשק המשתמש.
אם המרווח הפנימי לא מאוזן, המרכז הוויזואלי של התצוגה יזוז בהתאם. המרווח הפנימי ישפיע גם על המאפיין projection
, כך שהאזור הגלוי לא יכלול את אזור המרווח הפנימי. GMSCameraUpdate fitToBounds יבטיח שהמערכת תתייחס גם למרווח הפנימי הזה וגם למרווח פנימי המבוקש.
המאפיין הזה עשוי להיות מונפש בתוך בלוק אנימציה שמבוסס על UIView.
- (GMSMapViewPaddingAdjustmentBehavior) paddingAdjustmentBehavior [read, write, assign] |
ההגדרה קובעת איך תתבצע הוספה של אובייקטים מסוג אזור בטוח לערכי המרווח הפנימי.
כמו מרווח פנימי, פקדי המיקום של האזור הבטוח מוצבים בתוך פקדי המיקום במפה, כמו המצפן, לחצן המיקום שלי ובוחר הרצפה באזור הבטוח של המכשיר.
ברירת המחדל היא kGMSMapViewPaddingAdjustmentBehaviorBehavior.
- (BOOL) accessibilityElementsHidden [read, write, assign] |
ברירת המחדל היא YES.
אם המדיניות מוגדרת כ-NO,, GMSMapView ייצור רכיבי נגישות לאובייקטים של שכבת-על, כמו GMSMarker ו-GMSPolyline.
המאפיין הזה פועל בהתאם לפרוטוקול UIAccessibility לא רשמי, מלבד ערך ברירת המחדל YES (כן).
- (GMSMapLayer*) שכבה [read, retain] |
רכיב גישה לסוג CALayer המותאם אישית שמשמש לשכבה.
- (GMSFrameRate) preferredFrameRate [read, write, assign] |
ההגדרה קובעת את קצב הפריימים של הרינדור.
ערך ברירת המחדל הוא kGMSFrameRateMaximum.
- (GMSCoordinateBounds*) cameraTargetBounds [read, write, assign] |
אם לא אפס, מגביל את יעד המצלמה כך שתנועות לא יגרמו ליציאה מהגבולות שצוינו.
- (GMSMapCapabilityFlags) mapCapabilities [read, assign] |
כל היכולות הזמינות לפי תנאים (תלויות ב-mapID או בהגדרות מפה אחרות) שזמינות כרגע.
לא כוללת יכולות שזמינות תמיד.