MGLSymbolStyleLayer

@interface MGLSymbolStyleLayer : MGLVectorStyleLayer

A symbol layer which allows customization of styling properties at runtime. You may instantiate a new symbol layer to add to a map style or you may query an MGLMapView for its style and obtain existing layers using the -[MGLStyle layerWithIdentifier:] method.

  • If true, the icon will be visible even if it collides with other previously drawn symbols.

    The default value of this property is an MGLStyleValue object containing an NSNumber object containing NO. Set this property to nil to reset it to the default value.

    This property is only applied to the style if iconImageName is non-nil. Otherwise, it is ignored.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<NSNumber *> *iconAllowOverlap;

    Swift

    var iconAllowOverlap: MGLStyleValue
  • If true, other symbols can be visible even if they collide with the icon.

    The default value of this property is an MGLStyleValue object containing an NSNumber object containing NO. Set this property to nil to reset it to the default value.

    This property is only applied to the style if iconImageName is non-nil. Otherwise, it is ignored.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<NSNumber *> *iconIgnorePlacement;

    Swift

    var iconIgnorePlacement: MGLStyleValue
  • A string with {tokens} replaced, referencing the data property to pull from.

    This attribute corresponds to the icon-image layout property in the Mapbox Style Specification.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<NSString *> *iconImageName;

    Swift

    var iconImageName: MGLStyleValue
  • If true, the icon may be flipped to prevent it from being rendered upside-down.

    The default value of this property is an MGLStyleValue object containing an NSNumber object containing NO. Set this property to nil to reset it to the default value.

    This property is only applied to the style if iconImageName is non-nil, and iconRotationAlignment is set to an MGLStyleValue object containing an NSValue object containing MGLIconRotationAlignmentMap, and symbolPlacement is set to an MGLStyleValue object containing an NSValue object containing MGLSymbolPlacementLine. Otherwise, it is ignored.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<NSNumber *> *iconKeepUpright;

    Swift

    var iconKeepUpright: MGLStyleValue
  • Offset distance of icon from its anchor.

    The default value of this property is an MGLStyleValue object containing an NSValue object containing a CGVector struct set to 0 from the left and 0 from the top. Set this property to nil to reset it to the default value.

    This property is only applied to the style if iconImageName is non-nil. Otherwise, it is ignored.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<NSValue *> *iconOffset;

    Swift

    var iconOffset: MGLStyleValue
  • If true, text will display without their corresponding icons when the icon collides with other symbols and the text does not.

    The default value of this property is an MGLStyleValue object containing an NSNumber object containing NO. Set this property to nil to reset it to the default value.

    This property is only applied to the style if iconImageName is non-nil, and textField is non-nil. Otherwise, it is ignored.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<NSNumber *> *iconOptional;

    Swift

    var iconOptional: MGLStyleValue
  • Size of the additional area around the icon bounding box used for detecting symbol collisions.

    This property is measured in points.

    The default value of this property is an MGLStyleValue object containing an NSNumber object containing the float 2. Set this property to nil to reset it to the default value.

    This property is only applied to the style if iconImageName is non-nil. Otherwise, it is ignored.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<NSNumber *> *iconPadding;

    Swift

    var iconPadding: MGLStyleValue
  • Rotates the icon clockwise.

    This property is measured in degrees.

    The default value of this property is an MGLStyleValue object containing an NSNumber object containing the float 0. Set this property to nil to reset it to the default value.

    This property is only applied to the style if iconImageName is non-nil. Otherwise, it is ignored.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<NSNumber *> *iconRotate;

    Swift

    var iconRotate: MGLStyleValue
  • In combination with symbolPlacement, determines the rotation behavior of icons.

    The default value of this property is an MGLStyleValue object containing an NSValue object containing MGLIconRotationAlignmentAuto. Set this property to nil to reset it to the default value.

    This property is only applied to the style if iconImageName is non-nil. Otherwise, it is ignored.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<NSValue *> *iconRotationAlignment;

    Swift

    var iconRotationAlignment: MGLStyleValue
  • Scale factor for icon. 1 is original size, 3 triples the size.

    The default value of this property is an MGLStyleValue object containing an NSNumber object containing the float 1. Set this property to nil to reset it to the default value.

    This property is only applied to the style if iconImageName is non-nil. Otherwise, it is ignored.

    This attribute corresponds to the icon-size layout property in the Mapbox Style Specification.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<NSNumber *> *iconScale;

    Swift

    var iconScale: MGLStyleValue
  • Scales the icon to fit around the associated text.

    The default value of this property is an MGLStyleValue object containing an NSValue object containing MGLIconTextFitNone. Set this property to nil to reset it to the default value.

    This property is only applied to the style if iconImageName is non-nil, and textField is non-nil. Otherwise, it is ignored.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<NSValue *> *iconTextFit;

    Swift

    var iconTextFit: MGLStyleValue
  • Size of the additional area added to dimensions determined by iconTextFit.

    This property is measured in points.

    The default value of this property is an MGLStyleValue object containing an NSValue object containing NSEdgeInsetsZero or UIEdgeInsetsZero. Set this property to nil to reset it to the default value.

    This property is only applied to the style if iconImageName is non-nil, and textField is non-nil, and iconTextFit is set to an MGLStyleValue object containing an NSValue object containing MGLIconTextFitBoth, MGLIconTextFitWidth, or MGLIconTextFitHeight. Otherwise, it is ignored.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<NSValue *> *iconTextFitPadding;

    Swift

    var iconTextFitPadding: MGLStyleValue
  • If true, the symbols will not cross tile edges to avoid mutual collisions. Recommended in layers that don’t have enough padding in the vector tile to prevent collisions, or if it is a point symbol layer placed after a line symbol layer.

    The default value of this property is an MGLStyleValue object containing an NSNumber object containing NO. Set this property to nil to reset it to the default value.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<NSNumber *> *symbolAvoidEdges;

    Swift

    var symbolAvoidEdges: MGLStyleValue
  • Label placement relative to its geometry.

    The default value of this property is an MGLStyleValue object containing an NSValue object containing MGLSymbolPlacementPoint. Set this property to nil to reset it to the default value.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<NSValue *> *symbolPlacement;

    Swift

    var symbolPlacement: MGLStyleValue
  • Distance between two symbol anchors.

    This property is measured in points.

    The default value of this property is an MGLStyleValue object containing an NSNumber object containing the float 250. Set this property to nil to reset it to the default value.

    This property is only applied to the style if symbolPlacement is set to an MGLStyleValue object containing an NSValue object containing MGLSymbolPlacementLine. Otherwise, it is ignored.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<NSNumber *> *symbolSpacing;

    Swift

    var symbolSpacing: MGLStyleValue
  • If true, the text will be visible even if it collides with other previously drawn symbols.

    The default value of this property is an MGLStyleValue object containing an NSNumber object containing NO. Set this property to nil to reset it to the default value.

    This property is only applied to the style if textField is non-nil. Otherwise, it is ignored.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<NSNumber *> *textAllowOverlap;

    Swift

    var textAllowOverlap: MGLStyleValue
  • Part of the text placed closest to the anchor.

    The default value of this property is an MGLStyleValue object containing an NSValue object containing MGLTextAnchorCenter. Set this property to nil to reset it to the default value.

    This property is only applied to the style if textField is non-nil. Otherwise, it is ignored.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<NSValue *> *textAnchor;

    Swift

    var textAnchor: MGLStyleValue
  • Value to use for a text label. Feature properties are specified using tokens like {field_name}.

    The default value of this property is an MGLStyleValue object containing the empty string. Set this property to nil to reset it to the default value.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<NSString *> *textField;

    Swift

    var textField: MGLStyleValue
  • Font stack to use for displaying text.

    The default value of this property is an MGLStyleValue object containing the array Open Sans Regular, Arial Unicode MS Regular. Set this property to nil to reset it to the default value.

    This property is only applied to the style if textField is non-nil. Otherwise, it is ignored.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<NSArray<NSString *> *> *textFont;

    Swift

    var textFont: MGLStyleValue
  • If true, other symbols can be visible even if they collide with the text.

    The default value of this property is an MGLStyleValue object containing an NSNumber object containing NO. Set this property to nil to reset it to the default value.

    This property is only applied to the style if textField is non-nil. Otherwise, it is ignored.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<NSNumber *> *textIgnorePlacement;

    Swift

    var textIgnorePlacement: MGLStyleValue
  • Text justification options.

    The default value of this property is an MGLStyleValue object containing an NSValue object containing MGLTextJustifyCenter. Set this property to nil to reset it to the default value.

    This property is only applied to the style if textField is non-nil. Otherwise, it is ignored.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<NSValue *> *textJustify;

    Swift

    var textJustify: MGLStyleValue
  • If true, the text may be flipped vertically to prevent it from being rendered upside-down.

    The default value of this property is an MGLStyleValue object containing an NSNumber object containing YES. Set this property to nil to reset it to the default value.

    This property is only applied to the style if textField is non-nil, and textRotationAlignment is set to an MGLStyleValue object containing an NSValue object containing MGLTextRotationAlignmentMap, and symbolPlacement is set to an MGLStyleValue object containing an NSValue object containing MGLSymbolPlacementLine. Otherwise, it is ignored.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<NSNumber *> *textKeepUpright;

    Swift

    var textKeepUpright: MGLStyleValue
  • Text tracking amount.

    This property is measured in ems.

    The default value of this property is an MGLStyleValue object containing an NSNumber object containing the float 0. Set this property to nil to reset it to the default value.

    This property is only applied to the style if textField is non-nil. Otherwise, it is ignored.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<NSNumber *> *textLetterSpacing;

    Swift

    var textLetterSpacing: MGLStyleValue
  • Text leading value for multi-line text.

    This property is measured in ems.

    The default value of this property is an MGLStyleValue object containing an NSNumber object containing the float 1.2. Set this property to nil to reset it to the default value.

    This property is only applied to the style if textField is non-nil. Otherwise, it is ignored.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<NSNumber *> *textLineHeight;

    Swift

    var textLineHeight: MGLStyleValue
  • Maximum angle change between adjacent characters.

    This property is measured in degrees.

    The default value of this property is an MGLStyleValue object containing an NSNumber object containing the float 45. Set this property to nil to reset it to the default value.

    This property is only applied to the style if textField is non-nil, and symbolPlacement is set to an MGLStyleValue object containing an NSValue object containing MGLSymbolPlacementLine. Otherwise, it is ignored.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<NSNumber *> *textMaxAngle;

    Swift

    var textMaxAngle: MGLStyleValue
  • The maximum line width for text wrapping.

    This property is measured in ems.

    The default value of this property is an MGLStyleValue object containing an NSNumber object containing the float 10. Set this property to nil to reset it to the default value.

    This property is only applied to the style if textField is non-nil. Otherwise, it is ignored.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<NSNumber *> *textMaxWidth;

    Swift

    var textMaxWidth: MGLStyleValue
  • Offset distance of text from its anchor.

    This property is measured in ems.

    The default value of this property is an MGLStyleValue object containing an NSValue object containing a CGVector struct set to 0 ems from the left and 0 ems from the top. Set this property to nil to reset it to the default value.

    This property is only applied to the style if textField is non-nil. Otherwise, it is ignored.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<NSValue *> *textOffset;

    Swift

    var textOffset: MGLStyleValue
  • If true, icons will display without their corresponding text when the text collides with other symbols and the icon does not.

    The default value of this property is an MGLStyleValue object containing an NSNumber object containing NO. Set this property to nil to reset it to the default value.

    This property is only applied to the style if textField is non-nil, and iconImageName is non-nil. Otherwise, it is ignored.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<NSNumber *> *textOptional;

    Swift

    var textOptional: MGLStyleValue
  • Size of the additional area around the text bounding box used for detecting symbol collisions.

    This property is measured in points.

    The default value of this property is an MGLStyleValue object containing an NSNumber object containing the float 2. Set this property to nil to reset it to the default value.

    This property is only applied to the style if textField is non-nil. Otherwise, it is ignored.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<NSNumber *> *textPadding;

    Swift

    var textPadding: MGLStyleValue
  • Orientation of text when map is pitched.

    The default value of this property is an MGLStyleValue object containing an NSValue object containing MGLTextPitchAlignmentAuto. Set this property to nil to reset it to the default value.

    This property is only applied to the style if textField is non-nil. Otherwise, it is ignored.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<NSValue *> *textPitchAlignment;

    Swift

    var textPitchAlignment: MGLStyleValue
  • Rotates the text clockwise.

    This property is measured in degrees.

    The default value of this property is an MGLStyleValue object containing an NSNumber object containing the float 0. Set this property to nil to reset it to the default value.

    This property is only applied to the style if textField is non-nil. Otherwise, it is ignored.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<NSNumber *> *textRotate;

    Swift

    var textRotate: MGLStyleValue
  • In combination with symbolPlacement, determines the rotation behavior of the individual glyphs forming the text.

    The default value of this property is an MGLStyleValue object containing an NSValue object containing MGLTextRotationAlignmentAuto. Set this property to nil to reset it to the default value.

    This property is only applied to the style if textField is non-nil. Otherwise, it is ignored.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<NSValue *> *textRotationAlignment;

    Swift

    var textRotationAlignment: MGLStyleValue
  • Font size.

    This property is measured in points.

    The default value of this property is an MGLStyleValue object containing an NSNumber object containing the float 16. Set this property to nil to reset it to the default value.

    This property is only applied to the style if textField is non-nil. Otherwise, it is ignored.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<NSNumber *> *textSize;

    Swift

    var textSize: MGLStyleValue
  • Specifies how to capitalize text.

    The default value of this property is an MGLStyleValue object containing an NSValue object containing MGLTextTransformNone. Set this property to nil to reset it to the default value.

    This property is only applied to the style if textField is non-nil. Otherwise, it is ignored.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<NSValue *> *textTransform;

    Swift

    var textTransform: MGLStyleValue
  • The tint color to apply to the icon. The iconImageName property must be set to a template image.

    The default value of this property is an MGLStyleValue object containing UIColor.blackColor. Set this property to nil to reset it to the default value.

    This property is only applied to the style if iconImageName is non-nil. Otherwise, it is ignored.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<UIColor *> *iconColor;

    Swift

    var iconColor: MGLStyleValue
  • Fade out the halo towards the outside.

    This property is measured in points.

    The default value of this property is an MGLStyleValue object containing an NSNumber object containing the float 0. Set this property to nil to reset it to the default value.

    This property is only applied to the style if iconImageName is non-nil. Otherwise, it is ignored.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<NSNumber *> *iconHaloBlur;

    Swift

    var iconHaloBlur: MGLStyleValue
  • The color of the icon’s halo. The iconImageName property must be set to a template image.

    The default value of this property is an MGLStyleValue object containing UIColor.clearColor. Set this property to nil to reset it to the default value.

    This property is only applied to the style if iconImageName is non-nil. Otherwise, it is ignored.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<UIColor *> *iconHaloColor;

    Swift

    var iconHaloColor: MGLStyleValue
  • Distance of halo to the icon outline.

    This property is measured in points.

    The default value of this property is an MGLStyleValue object containing an NSNumber object containing the float 0. Set this property to nil to reset it to the default value.

    This property is only applied to the style if iconImageName is non-nil. Otherwise, it is ignored.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<NSNumber *> *iconHaloWidth;

    Swift

    var iconHaloWidth: MGLStyleValue
  • The opacity at which the icon will be drawn.

    The default value of this property is an MGLStyleValue object containing an NSNumber object containing the float 1. Set this property to nil to reset it to the default value.

    This property is only applied to the style if iconImageName is non-nil. Otherwise, it is ignored.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<NSNumber *> *iconOpacity;

    Swift

    var iconOpacity: MGLStyleValue
  • Distance that the icon’s anchor is moved from its original placement.

    This property is measured in points.

    The default value of this property is an MGLStyleValue object containing an NSValue object containing a CGVector struct set to 0 points from the left and 0 points from the top. Set this property to nil to reset it to the default value.

    This property is only applied to the style if iconImageName is non-nil. Otherwise, it is ignored.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<NSValue *> *iconTranslate;

    Swift

    var iconTranslate: MGLStyleValue
  • Controls the translation reference point.

    The default value of this property is an MGLStyleValue object containing an NSValue object containing MGLIconTranslateAnchorMap. Set this property to nil to reset it to the default value.

    This property is only applied to the style if iconImageName is non-nil, and iconTranslate is non-nil. Otherwise, it is ignored.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<NSValue *> *iconTranslateAnchor;

    Swift

    var iconTranslateAnchor: MGLStyleValue
  • The color with which the text will be drawn.

    The default value of this property is an MGLStyleValue object containing UIColor.blackColor. Set this property to nil to reset it to the default value.

    This property is only applied to the style if textField is non-nil. Otherwise, it is ignored.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<UIColor *> *textColor;

    Swift

    var textColor: MGLStyleValue
  • The halo’s fadeout distance towards the outside.

    This property is measured in points.

    The default value of this property is an MGLStyleValue object containing an NSNumber object containing the float 0. Set this property to nil to reset it to the default value.

    This property is only applied to the style if textField is non-nil. Otherwise, it is ignored.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<NSNumber *> *textHaloBlur;

    Swift

    var textHaloBlur: MGLStyleValue
  • The color of the text’s halo, which helps it stand out from backgrounds.

    The default value of this property is an MGLStyleValue object containing UIColor.clearColor. Set this property to nil to reset it to the default value.

    This property is only applied to the style if textField is non-nil. Otherwise, it is ignored.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<UIColor *> *textHaloColor;

    Swift

    var textHaloColor: MGLStyleValue
  • Distance of halo to the font outline. Max text halo width is ¼ of the font-size.

    This property is measured in points.

    The default value of this property is an MGLStyleValue object containing an NSNumber object containing the float 0. Set this property to nil to reset it to the default value.

    This property is only applied to the style if textField is non-nil. Otherwise, it is ignored.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<NSNumber *> *textHaloWidth;

    Swift

    var textHaloWidth: MGLStyleValue
  • The opacity at which the text will be drawn.

    The default value of this property is an MGLStyleValue object containing an NSNumber object containing the float 1. Set this property to nil to reset it to the default value.

    This property is only applied to the style if textField is non-nil. Otherwise, it is ignored.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<NSNumber *> *textOpacity;

    Swift

    var textOpacity: MGLStyleValue
  • Distance that the text’s anchor is moved from its original placement.

    This property is measured in points.

    The default value of this property is an MGLStyleValue object containing an NSValue object containing a CGVector struct set to 0 points from the left and 0 points from the top. Set this property to nil to reset it to the default value.

    This property is only applied to the style if textField is non-nil. Otherwise, it is ignored.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<NSValue *> *textTranslate;

    Swift

    var textTranslate: MGLStyleValue
  • Controls the translation reference point.

    The default value of this property is an MGLStyleValue object containing an NSValue object containing MGLTextTranslateAnchorMap. Set this property to nil to reset it to the default value.

    This property is only applied to the style if textField is non-nil, and textTranslate is non-nil. Otherwise, it is ignored.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, null_resettable)
        MGLStyleValue<NSValue *> *textTranslateAnchor;

    Swift

    var textTranslateAnchor: MGLStyleValue