הפניה לכיתה של GMSFeatureLayer


סקירה

מחלקה שמייצגת אוסף של כל התכונות של אותו GMSFeatureType, שניתן לשנות את הסגנון שלה אצל הלקוח.

לכל GMSFeatureType יהיה GMSFeatureLayer תואם.

עוברת בירושה על ידי GMSDatasetFeatureLayer.

פונקציות של חברים ציבוריים

(instancetype)initWithFeatureType:
 יצירת מופע של שכבת תכונות לצורך בדיקה.

נכסים

GMSFeatureTypefeatureType
 סוג התכונה שמשויך לשכבה הזו.
בוליאניזמין
 המדיניות קובעת אם GMSFeatureLayer מבוסס-הנתונים זמין.
GMSFeatureStyle *_Nullable(^)(T)סגנון
 בלוק עיצוב שיחול על כל התכונות בשכבה הזו.

מסמכי תיעוד בנושא פונקציות של חברים

- (instancetype) initWithFeatureType: (GMSFeatureType) featureType

יצירת מופע של שכבת תכונות לצורך בדיקה.

יש להשתמש בשיטה זו עבור בדיקות היחידה שלך בלבד. בסביבת ייצור, רק ה-SDK צריך ליצור GMSFeatureLayer מכונות.


תיעוד של נכס

- (GMSFeatureType) featureType [read, assign]

סוג התכונה שמשויך לשכבה הזו.

כל התכונות שמשויכות לשכבה יהיו מהסוג הזה.

- (BOOL) זמין [read, assign]

המדיניות קובעת אם GMSFeatureLayer מבוסס-הנתונים זמין.

סגנון מבוסס-נתונים דורש שימוש ב-Meta Framework, מזהה מפה חוקי ושימוש בסוג התכונה. אם הערך שלו הוא NO, העיצוב של GMSFeatureLayer יחזור לברירת המחדל והאירועים לא יופעלו.

- (GMSFeatureStyle* _Nullable(^ style)(T)) [read, write, assign]

בלוק עיצוב שיחול על כל התכונות בשכבה הזו.

בלוק הסגנון מוחל על כל התכונות הגלויות באזור התצוגה כאשר מתבצעת קריאה לרכיב המגדיר, והוא מופעל מספר פעמים עבור התכונות הבאות שנכנסים לאזור התצוגה.

הפונקציה נדרשת כדי להיות דטרמיניסטית ולהחזיר תוצאות עקביות כשמחילים אותה על קטעי המפה. אם מפרטי העיצוב של תכונה כלשהי ישתנו, צריך להגדיר שוב את style. שינוי ההתנהגות של בלוק הסגנון בלי לשלוח קריאה לרכיב המגדיר style יגרום להתנהגות לא מוגדרת, כולל עיבודי מפה לא פעילים ו/או קטועים. דוגמה:

 {.swift}
 var selectedPlaceIDs = Set<String>()
 var style = FeatureStyle(fill: .red, stroke: .clear, strokeWidth: 0)
 layer.style = { feature in
   selectedPlaceIDs.contains(feature.placeID) ? style : nil
 }
 selectedPlaceIDs.insert("foo")
 style = FeatureStyle(fill: .clear, stroke: .blue, strokeWidth: 1.5)
 layer.style = { feature in
   selectedPlaceIDs.contains(feature.placeID) ? style : nil
 }