סקירה כללית
מחלקה שמייצגת אוסף של כל התכונות של אותו GMSFeatureType
, שניתן לשנות את הסגנון שלה אצל הלקוח.
לכל GMSFeatureType
יהיה GMSFeatureLayer
תואם.
פונקציות של חברי מועדון | |
(instancetype) | - initWithFeatureType: |
יוצרים מופע של שכבת תכונות לצורך בדיקה. | |
נכסים | |
GMSFeatureType | featureType |
סוג התכונה שמשויכת לשכבה הזו. | |
בוליאני | זמין |
המדיניות קובעת אם המודל GMSFeatureLayer מבוסס-הנתונים יהיה זמין. | |
GMSFeatureStyle *_Nullable(^)(T) | סגנון |
בלוק עיצוב שיוצג על כל התכונות בשכבה הזו. |
מסמכי תיעוד לגבי פונקציות של חברים
- (instancetype) initWithFeatureType: | (GMSFeatureType) | featureType |
יוצרים מופע של שכבת תכונות לצורך בדיקה.
יש להשתמש בשיטה זו לבדיקות היחידה שלך בלבד. בסביבת ייצור, רק ה-SDK צריך ליצור מכונות GMSFeatureLayer
.
תיעוד נכס
- (GMSFeatureType) featureType [read, assign] |
סוג התכונה שמשויכת לשכבה הזו.
כל התכונות המשויכות לשכבה יהיו מהסוג הזה.
- (BOOL) זמין [read, assign] |
המדיניות קובעת אם המודל GMSFeatureLayer
מבוסס-הנתונים יהיה זמין.
כדי להשתמש בסגנון מבוסס-נתונים, צריך להוסיף את Metal 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 }