MGLAnnotationImage


@interface MGLAnnotationImage : NSObject <NSSecureCoding>

The MGLAnnotationImage class is responsible for presenting point-based annotations visually on an MGLMapView instance. Annotation image objects pair NSImage objects with annotation-related metadata. They may be recycled later and put into a reuse queue that is maintained by the map view.

  • Initializes and returns a new annotation image object.

    Declaration

    Objective-C

    + (nonnull instancetype)annotationImageWithImage:(nonnull NSImage *)image
                                     reuseIdentifier:
                                         (nonnull NSString *)reuseIdentifier;

    Swift

    convenience init(image: NSImage, reuseIdentifier: String)

    Parameters

    image

    The image to display for the annotation.

    reuseIdentifier

    The string that identifies this annotation image in the reuse queue.

    Return Value

    The initialized annotation image object or nil if there was a problem initializing the object.

  • The image to display for the annotation.

    Declaration

    Objective-C

    @property (readonly, nonatomic) NSImage *_Nonnull image;

    Swift

    var image: NSImage { get }
  • The string that identifies this annotation image in the reuse queue. (read-only)

    You specify the reuse identifier when you create the image object. You use this type later to retrieve an annotation image object that was created previously but which is currently unused because its annotation is not on-screen.

    If you define distinctly different types of annotations (with distinctly different annotation images to go with them), you can differentiate between the annotation types by specifying different reuse identifiers for each one.

    Declaration

    Objective-C

    @property (readonly, nonatomic) NSString *_Nonnull reuseIdentifier;

    Swift

    var reuseIdentifier: String { get }
  • A Boolean value indicating whether the annotation is selectable.

    The default value of this property is YES. If the value of this property is NO, the annotation image ignores click events and cannot be selected.

    Declaration

    Objective-C

    @property (getter=isSelectable, assign, readwrite, nonatomic) BOOL selectable;

    Swift

    var isSelectable: Bool { get set }
  • The cursor that appears above any annotation using this annotation image.

    By default, this property is set to nil, representing the current cursor.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic, nullable) NSCursor *cursor;

    Swift

    var cursor: NSCursor? { get set }