Fix a bunch of internal links in iOS documentation (#2738)

This commit is contained in:
Bart Louwers
2024-08-20 17:30:22 +02:00
committed by GitHub
parent fceaa18caf
commit d544da140b
84 changed files with 873 additions and 1016 deletions

View File

@@ -5,14 +5,14 @@
NS_ASSUME_NONNULL_BEGIN
/**
The `MLNAnnotationImage` class is responsible for presenting point-based
The ``MLNAnnotationImage`` class is responsible for presenting point-based
annotations visually on a map view. Annotation image objects wrap `UIImage`
objects and may be recycled later and put into a reuse queue that is maintained
by the map view.
#### Related examples
TODO: Mark a place on the map with an image, learn how use an image
as a marker using `MLNAnnotationImage`.
as a marker using ``MLNAnnotationImage``.
*/
MLN_EXPORT
@interface MLNAnnotationImage : NSObject <NSSecureCoding>

View File

@@ -39,7 +39,7 @@ typedef NS_ENUM(NSUInteger, MLNAnnotationViewDragState) {
};
/**
The `MLNAnnotationView` class is responsible for marking a point annotation
The ``MLNAnnotationView`` class is responsible for marking a point annotation
with a view. Annotation views represent an annotation object, which is an
object that corresponds to the ``MLNAnnotation`` protocol. When an annotation’s
geographic coordinate is visible in the map view, the map view asks its
@@ -65,7 +65,7 @@ MLN_EXPORT
leaves the viewport, the map view moves its associated view to a reuse queue.
When a new annotation becomes visible, you can request a view for that
annotation by passing the appropriate reuse identifier string to the
`-[MLNMapView dequeueReusableAnnotationViewWithIdentifier:]` method.
``MLNMapView/dequeueReusableAnnotationViewWithIdentifier:`` method.
@param reuseIdentifier A unique string identifier for this view that allows you
to reuse this view with multiple similar annotations. You can set this
@@ -173,7 +173,7 @@ MLN_EXPORT
The default value of this property is `NO`. Keep this property set to `NO` if
the view’s legibility is important.
@note Scaling many on-screen annotation views can contribute to poor map
> Note: Scaling many on-screen annotation views can contribute to poor map
performance. Consider keeping this property disabled if your use case
involves hundreds or thousands of annotation views.
*/
@@ -256,7 +256,7 @@ MLN_EXPORT
continue to completion.
#### Related examples
TODO: Enable users to drag `MLNAnnotationView` objects on your map.
TODO: Enable users to drag ``MLNAnnotationView`` objects on your map.
*/
@property (nonatomic, assign, getter=isDraggable) BOOL draggable;

View File

@@ -10,17 +10,17 @@ NS_ASSUME_NONNULL_BEGIN
A protocol for a `UIView` subclass that displays information about a selected
annotation near that annotation.
To receive updates from an object that conforms to the `MLNCalloutView` protocol,
use the optional methods available in the `MLNCalloutViewDelegate` protocol.
To receive updates from an object that conforms to the ``MLNCalloutView`` protocol,
use the optional methods available in the ``MLNCalloutViewDelegate`` protocol.
#### Related examples
TODO: Display custom views as callouts by customizing an
`MLNCalloutView`.
``MLNCalloutView``.
*/
@protocol MLNCalloutView <NSObject>
/**
An object conforming to the `MLNAnnotation` protocol whose details this callout
An object conforming to the ``MLNAnnotation`` protocol whose details this callout
view displays.
*/
@property (nonatomic, strong) id<MLNAnnotation> representedObject;
@@ -38,7 +38,7 @@ NS_ASSUME_NONNULL_BEGIN
@property (nonatomic, strong) UIView *rightAccessoryView;
/**
An object conforming to the `MLNCalloutViewDelegate` method that receives
An object conforming to the ``MLNCalloutViewDelegate`` method that receives
messages related to the callout view’s interactive subviews.
*/
@property (nonatomic, weak) id<MLNCalloutViewDelegate> delegate;
@@ -83,7 +83,7 @@ NS_ASSUME_NONNULL_BEGIN
but the left and right margins from a minimum width that the callout should have.
@param rect Rect that the callout is presented from. This should be the same as the one passed in
`-[MLNCalloutView presentCalloutFromRect:inView:constrainedToRect:animated:]`
``MLNCalloutView/presentCalloutFromRect:inView:constrainedToRect:animated:``
@return `UIEdgeInsets` representing the margins. Values should be negative.
*/
- (UIEdgeInsets)marginInsetsHintForPresentationFromRect:(CGRect)rect
@@ -108,9 +108,9 @@ NS_ASSUME_NONNULL_BEGIN
@end
/**
The `MLNCalloutViewDelegate` protocol defines a set of optional methods that
The ``MLNCalloutViewDelegate`` protocol defines a set of optional methods that
you can use to receive messages from an object that conforms to the
`MLNCalloutView` protocol. The callout view uses these methods to inform the
``MLNCalloutView`` protocol. The callout view uses these methods to inform the
delegate that the user has interacted with the the callout view.
*/
@protocol MLNCalloutViewDelegate <NSObject>

View File

@@ -1,24 +1,23 @@
#import "MLNFoundation.h"
/**
:nodoc:
Bitmask values that describe why a camera move occurred.
Values of this type are passed to the `MLNMapView`'s delegate in the following methods:
Values of this type are passed to the ``MLNMapView``'s delegate in the following methods:
- `-mapView:shouldChangeFromCamera:toCamera:reason:`
- `-mapView:regionWillChangeWithReason:animated:`
- `-mapView:regionIsChangingWithReason:`
- `-mapView:regionDidChangeWithReason:animated:`
- ``MLNMapViewDelegate/mapView:shouldChangeFromCamera:toCamera:reason:``
- ``MLNMapViewDelegate/mapView:regionWillChangeWithReason:animated:``
- ``MLNMapViewDelegate/mapView:regionIsChangingWithReason:``
- ``MLNMapViewDelegate/mapView:regionDidChangeWithReason:animated:``
It's important to note that it's almost impossible to perform a rotate without zooming (in or out),
so if you'll often find `MLNCameraChangeReasonGesturePinch` set alongside
`MLNCameraChangeReasonGestureRotate`.
so if you'll often find ``MLNCameraChangeReasonGesturePinch`` set alongside
``MLNCameraChangeReasonGestureRotate``.
Since there are several reasons why a zoom or rotation has occurred, it is worth considering
creating a combined constant, for example:
```
```objc
static const MLNCameraChangeReason anyZoom = MLNCameraChangeReasonGesturePinch |
MLNCameraChangeReasonGestureZoomIn |
MLNCameraChangeReasonGestureZoomOut |
@@ -29,39 +28,39 @@
```
*/
typedef NS_OPTIONS(NSUInteger, MLNCameraChangeReason) {
/// :nodoc: The reason for the camera change has not be specified.
/// The reason for the camera change has not be specified.
MLNCameraChangeReasonNone = 0,
/// :nodoc: Set when a public API that moves the camera is called. This may be set for some
/// Set when a public API that moves the camera is called. This may be set for some
/// gestures, for example MLNCameraChangeReasonResetNorth.
MLNCameraChangeReasonProgrammatic = 1 << 0,
/// :nodoc: The user tapped the compass to reset the map orientation so North is up.
/// The user tapped the compass to reset the map orientation so North is up.
MLNCameraChangeReasonResetNorth = 1 << 1,
/// :nodoc: The user panned the map.
/// The user panned the map.
MLNCameraChangeReasonGesturePan = 1 << 2,
/// :nodoc: The user pinched to zoom in/out.
/// The user pinched to zoom in/out.
MLNCameraChangeReasonGesturePinch = 1 << 3,
// :nodoc: The user rotated the map.
MLNCameraChangeReasonGestureRotate = 1 << 4,
/// :nodoc: The user zoomed the map in (one finger double tap).
/// The user zoomed the map in (one finger double tap).
MLNCameraChangeReasonGestureZoomIn = 1 << 5,
/// :nodoc: The user zoomed the map out (two finger single tap).
/// The user zoomed the map out (two finger single tap).
MLNCameraChangeReasonGestureZoomOut = 1 << 6,
/// :nodoc: The user long pressed on the map for a quick zoom (single tap, then long press and
/// The user long pressed on the map for a quick zoom (single tap, then long press and
/// drag up/down).
MLNCameraChangeReasonGestureOneFingerZoom = 1 << 7,
// :nodoc: The user panned with two fingers to tilt the map (two finger drag).
// The user panned with two fingers to tilt the map (two finger drag).
MLNCameraChangeReasonGestureTilt = 1 << 8,
// :nodoc: Cancelled
// Cancelled
MLNCameraChangeReasonTransitionCancelled = 1 << 16
};

View File

@@ -2,7 +2,7 @@
#import "SMCalloutView.h"
/**
A concrete implementation of `MLNCalloutView` based on
A concrete implementation of ``MLNCalloutView`` based on
<a href="https://github.com/nfarina/calloutview">SMCalloutView</a>. This
callout view displays the represented annotation’s title, subtitle, and
accessory views in a compact, two-line layout.

View File

@@ -31,7 +31,7 @@ MLN_EXPORT
@param camera The new camera to be used in the projection calculation.
@param insets The insets applied on top of the camera be used in the projection calculation.
@note `MLNMapView` instance frame must not be changed since this projection is initialized,
> Note: ``MLNMapView`` instance frame must not be changed since this projection is initialized,
otherwise the calculation may be wrong.
*/
- (void)setCamera:(MLNMapCamera *_Nonnull)camera withEdgeInsets:(UIEdgeInsets)insets;
@@ -42,7 +42,7 @@ MLN_EXPORT
@param bounds The bounds that the viewport should fit.
@param insets The insets applied on top of the viewport to be used in the projection calculation.
@note `MLNMapView` instance frame must not be changed since this projection is initialized,
> Note: ``MLNMapView`` instance frame must not be changed since this projection is initialized,
otherwise the calculation may be wrong.
*/
- (void)setVisibleCoordinateBounds:(MLNCoordinateBounds)bounds edgePadding:(UIEdgeInsets)insets;

View File

@@ -26,7 +26,7 @@ NS_ASSUME_NONNULL_BEGIN
@protocol MLNFeature;
@protocol MLNLocationManager;
/** Options for `MLNMapView.decelerationRate`. */
/** Options for ``MLNMapView/decelerationRate``. */
typedef CGFloat MLNMapViewDecelerationRate NS_TYPED_EXTENSIBLE_ENUM;
/** The default deceleration rate for a map view. */
@@ -40,7 +40,7 @@ FOUNDATION_EXTERN MLN_EXPORT const MLNMapViewDecelerationRate MLNMapViewDecelera
/**
The vertical alignment of an annotation within a map view. Used with
`MLNMapView.userLocationVerticalAlignment`.
``MLNMapView/userLocationVerticalAlignment``.
*/
typedef NS_ENUM(NSUInteger, MLNAnnotationVerticalAlignment) {
/** Aligns the annotation vertically in the center of the map view. */
@@ -53,10 +53,10 @@ typedef NS_ENUM(NSUInteger, MLNAnnotationVerticalAlignment) {
/**
The position of scale bar, compass, logo and attribution in a map view. Used with
`MLNMapView.scaleBarPosition`,
`MLNMapView.compassViewPosition`,
`MLNMapView.logoViewPosition`,
`MLNMapView.attributionButtonPosition`.
``MLNMapView/scaleBarPosition``,
``MLNMapView/compassViewPosition``,
``MLNMapView/logoViewPosition``,
``MLNMapView/attributionButtonPosition``.
*/
typedef NS_ENUM(NSUInteger, MLNOrnamentPosition) {
/** Place the ornament in the top left of the map view. */
@@ -71,7 +71,7 @@ typedef NS_ENUM(NSUInteger, MLNOrnamentPosition) {
/**
The mode used to track the user location on the map. Used with
`MLNMapView.userTrackingMode`.
``MLNMapView/userTrackingMode``.
#### Related examples
- TODO: Switch between user tracking modes</a> example to learn how to toggle modes and
@@ -81,7 +81,7 @@ typedef NS_ENUM(NSUInteger, MLNUserTrackingMode) {
/** The map does not follow the user location. */
MLNUserTrackingModeNone = 0,
/** The map follows the user location. This tracking mode falls back
to `MLNUserTrackingModeNone` if the user pans the map view. */
to ``MLNUserTrackingMode/MLNUserTrackingModeNone`` if the user pans the map view. */
MLNUserTrackingModeFollow,
/**
The map follows the user location and rotates when the heading changes.
@@ -91,7 +91,7 @@ typedef NS_ENUM(NSUInteger, MLNUserTrackingMode) {
This tracking mode is disabled if the user pans the map view, but
remains enabled if the user zooms in. If the user rotates the map
view, this tracking mode will fall back to `MLNUserTrackingModeFollow`.
view, this tracking mode will fall back to ``MLNUserTrackingModeFollow``.
*/
MLNUserTrackingModeFollowWithHeading,
/**
@@ -102,7 +102,7 @@ typedef NS_ENUM(NSUInteger, MLNUserTrackingMode) {
This tracking mode is disabled if the user pans the map view, but
remains enabled if the user zooms in. If the user rotates the map view,
this tracking mode will fall back to `MLNUserTrackingModeFollow`.
this tracking mode will fall back to ``MLNUserTrackingModeFollow``.
*/
MLNUserTrackingModeFollowWithCourse,
};
@@ -116,7 +116,7 @@ typedef NS_ENUM(NSUInteger, MLNPanScrollingMode) {
MLNPanScrollingModeDefault
};
/** Options for `MLNMapView.preferredFramesPerSecond`. */
/** Options for ``MLNMapView/preferredFramesPerSecond``. */
typedef NSInteger MLNMapViewPreferredFramesPerSecond NS_TYPED_EXTENSIBLE_ENUM;
/**
@@ -142,7 +142,7 @@ FOUNDATION_EXTERN MLN_EXPORT MLNExceptionName const MLNUserLocationAnnotationTyp
An interactive, customizable map view with an interface similar to the one
provided by Apple’s MapKit.
Using `MLNMapView`, you can embed the map inside a view, allow users to
Using ``MLNMapView``, you can embed the map inside a view, allow users to
manipulate it with standard gestures, animate the map between different
viewpoints, and present information in the form of annotations and overlays.
@@ -154,15 +154,15 @@ FOUNDATION_EXTERN MLN_EXPORT MLNExceptionName const MLNUserLocationAnnotationTyp
<a href="https://maplibre.org/maputnik/">Maputnik</a>.
Because `MLNMapView` loads asynchronously, several delegate methods are available
Because ``MLNMapView`` loads asynchronously, several delegate methods are available
for receiving map-related updates. These methods can be used to ensure that certain operations
have completed before taking any additional actions. Information on these methods is located
in the `MLNMapViewDelegate` protocol documentation.
in the ``MLNMapViewDelegate`` protocol documentation.
Adding your own gesture recognizer to `MLNMapView` will block the corresponding
gesture recognizer built into `MLNMapView`. To avoid conflicts, define which
Adding your own gesture recognizer to ``MLNMapView`` will block the corresponding
gesture recognizer built into ``MLNMapView``. To avoid conflicts, define which
gesture takes precedence. For example, you can create your own
`UITapGestureRecognizer` that will be invoked only if the default `MLNMapView`
`UITapGestureRecognizer` that will be invoked only if the default ``MLNMapView``
tap gesture fails:
```swift
@@ -173,7 +173,7 @@ FOUNDATION_EXTERN MLN_EXPORT MLNExceptionName const MLNUserLocationAnnotationTyp
mapView.addGestureRecognizer(mapTapGestureRecognizer)
```
@note You are responsible for getting permission to use the map data and for
> Note: You are responsible for getting permission to use the map data and for
ensuring that your use adheres to the relevant terms of use.
*/
MLN_EXPORT
@@ -202,8 +202,8 @@ MLN_EXPORT
#### Related examples
- TODO: initialize an `MLNMapView` with a custom style
- TODO: how to initialize an `MLNMapView` with a third-party tile source
- TODO: initialize an ``MLNMapView`` with a custom style
- TODO: how to initialize an ``MLNMapView`` with a third-party tile source
*/
- (instancetype)initWithFrame:(CGRect)frame styleURL:(nullable NSURL *)styleURL;
@@ -230,8 +230,8 @@ MLN_EXPORT
If the style is loading, this property is set to `nil` until the style finishes
loading. If the style has failed to load, this property is set to `nil`.
Because the style loads asynchronously, you should manipulate it in the
`-[MLNMapViewDelegate mapView:didFinishLoadingStyle:]` or
`-[MLNMapViewDelegate mapViewDidFinishLoadingMap:]` method. It is not possible
``MLNMapViewDelegate/mapView:didFinishLoadingStyle:`` or
``MLNMapViewDelegate/mapViewDidFinishLoadingMap:`` method. It is not possible
to manipulate the style before it has finished loading.
*/
@property (nonatomic, readonly, nullable) MLNStyle *style;
@@ -309,7 +309,8 @@ MLN_EXPORT
@property (nonatomic, assign) BOOL scaleBarUsesMetricSystem;
/**
The position of the scale bar. The default value is `MLNOrnamentPositionTopLeft`.
The position of the scale bar. The default value is
``MLNOrnamentPosition/MLNOrnamentPositionTopLeft``.
*/
@property (nonatomic, assign) MLNOrnamentPosition scaleBarPosition;
@@ -325,7 +326,8 @@ MLN_EXPORT
@property (nonatomic, readonly) MLNCompassButton *compassView;
/**
The position of the compass view. The default value is `MLNOrnamentPositionTopRight`.
The position of the compass view. The default value is
``MLNOrnamentPosition/MLNOrnamentPositionTopRight``.
*/
@property (nonatomic, assign) MLNOrnamentPosition compassViewPosition;
@@ -341,7 +343,8 @@ MLN_EXPORT
@property (nonatomic, readonly) UIImageView *logoView;
/**
The position of the logo view. The default value is `MLNOrnamentPositionBottomLeft`.
The position of the logo view. The default value is
``MLNOrnamentPosition/MLNOrnamentPositionBottomLeft``.
*/
@property (nonatomic, assign) MLNOrnamentPosition logoViewPosition;
@@ -357,7 +360,7 @@ MLN_EXPORT
If you choose to reimplement this view, assign the `-showAttribution:` method
as the action for your view to present the default notices and settings.
@note Attribution is often required for many vector sources,
> Note: Attribution is often required for many vector sources,
OpenStreetMap data, or other data such as satellite or terrain
data. If that applies to this map view, do not hide this view or remove
any notices from it.
@@ -366,7 +369,8 @@ MLN_EXPORT
@property (nonatomic, readonly) UIButton *attributionButton;
/**
The position of the attribution button. The default value is `MLNOrnamentPositionBottomRight`.
The position of the attribution button. The default value is
``MLNOrnamentPosition/MLNOrnamentPositionBottomRight``.
*/
@property (nonatomic, assign) MLNOrnamentPosition attributionButtonPosition;
@@ -388,11 +392,11 @@ MLN_EXPORT
The preferred frame rate at which the map view is rendered.
The default value for this property is
`MLNMapViewPreferredFramesPerSecondDefault`, which will adaptively set the
``MLNMapViewPreferredFramesPerSecondDefault``, which will adaptively set the
preferred frame rate based on the capability of the user’s device to maintain
a smooth experience.
In addition to the provided `MLNMapViewPreferredFramesPerSecond` options, this
In addition to the provided ``MLNMapViewPreferredFramesPerSecond`` options, this
property can be set to arbitrary integer values.
@see `CADisplayLink.preferredFramesPerSecond`
@@ -418,13 +422,13 @@ MLN_EXPORT
location-related updates.
To receive the current user location, implement the
`-[MLNMapViewDelegate mapView:didUpdateUserLocation:]` and
`-[MLNMapViewDelegate mapView:didFailToLocateUserWithError:]` methods.
``MLNMapViewDelegate/mapView:didUpdateUserLocation:`` and
``MLNMapViewDelegate/mapView:didFailToLocateUserWithError:`` methods.
If setting this property to `nil` or if no custom manager is provided this
property is set to the default location manager.
`MLNMapView` uses a default location manager. If you want to substitute your
``MLNMapView`` uses a default location manager. If you want to substitute your
own location manager, you should do so by setting this property before setting
`showsUserLocation` to `YES`. To restore the default location manager,
set this property to `nil`.
@@ -479,7 +483,7 @@ MLN_EXPORT
/**
The mode used to track the user location. The default value is
`MLNUserTrackingModeNone`.
``MLNUserTrackingMode/MLNUserTrackingModeNone``.
Changing the value of this property updates the map view with an animated
transition. If you don’t want to animate the change, use the
@@ -487,7 +491,7 @@ MLN_EXPORT
#### Related examples
- TODO: Customize the user location annotation and learn how to customize the
default user location annotation shown by `MLNUserTrackingMode`.
default user location annotation shown by ``MLNUserTrackingMode``.
*/
@property (nonatomic, assign) MLNUserTrackingMode userTrackingMode;
@@ -526,15 +530,15 @@ MLN_EXPORT
/**
The vertical alignment of the user location annotation within the receiver. The
default value is `MLNAnnotationVerticalAlignmentCenter`.
default value is ``MLNAnnotationVerticalAlignment/MLNAnnotationVerticalAlignmentCenter``.
Changing the value of this property updates the map view with an animated
transition. If you don’t want to animate the change, use the
`-setUserLocationVerticalAlignment:animated:` method instead.
*/
@property (nonatomic, assign) MLNAnnotationVerticalAlignment userLocationVerticalAlignment
__attribute__((
deprecated("Use `-[MLNMapViewDelegate mapViewUserLocationAnchorPoint:]` instead.")));
__attribute__((deprecated("Use ``MLNMapViewDelegate/mapViewUserLocationAnchorPoint:`` instead.")
));
/**
Sets the vertical alignment of the user location annotation within the
@@ -548,7 +552,7 @@ MLN_EXPORT
- (void)setUserLocationVerticalAlignment:(MLNAnnotationVerticalAlignment)alignment
animated:(BOOL)animated
__attribute__((
deprecated("Use `-[MLNMapViewDelegate mapViewUserLocationAnchorPoint:]` instead.")));
deprecated("Use ``MLNMapViewDelegate/mapViewUserLocationAnchorPoint:`` instead.")));
/**
Updates the position of the user location annotation view by retreiving the user's last
@@ -570,11 +574,11 @@ MLN_EXPORT
Setting this property to `YES` causes the default user location annotation to
appear and always show an arrow-shaped heading indicator, if heading is
available. This property does not rotate the map; for that, see
`MLNUserTrackingModeFollowWithHeading`.
``MLNUserTrackingMode/MLNUserTrackingModeFollowWithHeading``.
This property has no effect when `userTrackingMode` is
`MLNUserTrackingModeFollowWithHeading` or
`MLNUserTrackingModeFollowWithCourse`.
This property has no effect when ``userTrackingMode`` is
``MLNUserTrackingMode/MLNUserTrackingModeFollowWithHeading`` or
``MLNUserTrackingMode/MLNUserTrackingModeFollowWithCourse``.
The default value of this property is `NO`.
*/
@@ -598,7 +602,7 @@ MLN_EXPORT
to fit both foci optimally within the viewport.
This property has no effect if the `userTrackingMode` property is set to a
value other than `MLNUserTrackingModeFollowWithCourse`.
value other than ``MLNUserTrackingMode/MLNUserTrackingModeFollowWithCourse``.
Changing the value of this property updates the map view with an animated
transition. If you don’t want to animate the change, use the
@@ -618,7 +622,7 @@ MLN_EXPORT
to fit both foci optimally within the viewport.
This method has no effect if the `userTrackingMode` property is set to a value
other than `MLNUserTrackingModeFollowWithCourse`.
other than ``MLNUserTrackingMode/MLNUserTrackingModeFollowWithCourse``.
To specify a completion handler to execute after the animation finishes, use
the `-setTargetCoordinate:animated:completionHandler:` method.
@@ -644,7 +648,7 @@ MLN_EXPORT
to fit both foci optimally within the viewport.
This method has no effect if the `userTrackingMode` property is set to a value
other than `MLNUserTrackingModeFollowWithCourse`.
other than ``MLNUserTrackingMode/MLNUserTrackingModeFollowWithCourse``.
@param targetCoordinate The target coordinate to fit within the viewport.
@param animated If `YES`, the map animates to fit the target within the map
@@ -691,10 +695,10 @@ MLN_EXPORT
restricting a user's ability to scroll vertically.
`MLNPanScrollingModeVertical` only allows the user to scroll vertically on the map,
restricting a user's ability to scroll horizontally.
`MLNPanScrollingModeDefault` allows the user to scroll both horizontally and vertically
on the map.
``MLNPanScrollingMode/MLNPanScrollingModeDefault`` allows the user to scroll both horizontally and
vertically on the map.
By default, this property is set to `MLNPanScrollingModeDefault`.
By default, this property is set to ``MLNPanScrollingMode/MLNPanScrollingModeDefault``.
*/
@property (nonatomic, assign) MLNPanScrollingMode panScrollingMode;
@@ -749,9 +753,9 @@ MLN_EXPORT
A floating-point value that determines the rate of deceleration after the user
lifts their finger.
Your application can use the `MLNMapViewDecelerationRateNormal` and
`MLNMapViewDecelerationRateFast` constants as reference points for reasonable
deceleration rates. `MLNMapViewDecelerationRateImmediate` can be used to
Your application can use the ``MLNMapViewDecelerationRateNormal`` and
``MLNMapViewDecelerationRateFast`` constants as reference points for reasonable
deceleration rates. ``MLNMapViewDecelerationRateImmediate`` can be used to
disable deceleration entirely.
*/
@property (nonatomic) CGFloat decelerationRate;
@@ -782,7 +786,7 @@ MLN_EXPORT
location or `NO` if you want the map to display the new location
immediately.
@note The behavior of this method is undefined if called in response to
> Note: The behavior of this method is undefined if called in response to
`UIApplicationWillTerminateNotification`.
*/
- (void)setCenterCoordinate:(CLLocationCoordinate2D)coordinate animated:(BOOL)animated;
@@ -798,7 +802,7 @@ MLN_EXPORT
zooming to the new location or `NO` if you want the map to display the new
location immediately.
@note The behavior of this method is undefined if called in response to
> Note: The behavior of this method is undefined if called in response to
`UIApplicationWillTerminateNotification`.
*/
- (void)setCenterCoordinate:(CLLocationCoordinate2D)centerCoordinate
@@ -818,7 +822,7 @@ MLN_EXPORT
zooming, and rotating to the new location or `NO` if you want the map to
display the new location immediately.
@note The behavior of this method is undefined if called in response to
> Note: The behavior of this method is undefined if called in response to
`UIApplicationWillTerminateNotification`.
*/
- (void)setCenterCoordinate:(CLLocationCoordinate2D)centerCoordinate
@@ -840,7 +844,7 @@ MLN_EXPORT
display the new location immediately.
@param completion The block executed after the animation finishes.
@note The behavior of this method is undefined if called in response to
> Note: The behavior of this method is undefined if called in response to
`UIApplicationWillTerminateNotification`.
*/
- (void)setCenterCoordinate:(CLLocationCoordinate2D)centerCoordinate
@@ -1310,7 +1314,7 @@ MLN_EXPORT
including the entire coordinate bounds. The camera object uses the current
direction and pitch.
@note The behavior of this method is undefined if called in response to
> Note: The behavior of this method is undefined if called in response to
`UIApplicationWillTerminateNotification`; you may receive a `nil` return value
depending on the order of notification delivery.
*/
@@ -1328,7 +1332,7 @@ MLN_EXPORT
including the entire coordinate bounds. The camera object uses the current
direction and pitch.
@note The behavior of this method is undefined if called in response to
> Note: The behavior of this method is undefined if called in response to
`UIApplicationWillTerminateNotification`; you may receive a `nil` return value
depending on the order of notification delivery.
*/
@@ -1350,7 +1354,7 @@ MLN_EXPORT
including the entire coordinate bounds. The initial camera's pitch and
direction will be honored.
@note The behavior of this method is undefined if called in response to
> Note: The behavior of this method is undefined if called in response to
`UIApplicationWillTerminateNotification`; you may receive a `nil` return value
depending on the order of notification delivery.
*/
@@ -1371,7 +1375,7 @@ MLN_EXPORT
(close to the ground) as possible while still including the entire shape.
The initial camera's pitch and direction will be honored.
@note The behavior of this method is undefined if called in response to
> Note: The behavior of this method is undefined if called in response to
`UIApplicationWillTerminateNotification`; you may receive a `nil` return value
depending on the order of notification delivery.
*/
@@ -1392,7 +1396,7 @@ MLN_EXPORT
(close to the ground) as possible while still including the entire shape.
The camera object uses the current pitch.
@note The behavior of this method is undefined if called in response to
> Note: The behavior of this method is undefined if called in response to
`UIApplicationWillTerminateNotification`; you may receive a `nil` return value
depending on the order of notification delivery.
*/
@@ -1407,7 +1411,7 @@ MLN_EXPORT
For example, a pinch-to-zoom gesture would anchor the map at the midpoint of
the pinch.
If the `userTrackingMode` property is not `MLNUserTrackingModeNone`, the
If the ``userTrackingMode`` property is not ``MLNUserTrackingMode/MLNUserTrackingModeNone``, the
user annotation is used as the anchor point.
Subclasses may override this method to provide specialized behavior - for
@@ -1434,7 +1438,7 @@ MLN_EXPORT
property may be overridden at any time.
The usage of `automaticallyAdjustsScrollViewInsets` has been deprecated
use the map view’s property `MLNMapView.automaticallyAdjustsContentInset`instead.
use the map view’s property ``MLNMapView/automaticallyAdjustsContentInset``instead.
Changing the value of this property updates the map view immediately. If you
want to animate the change, use the `-setContentInset:animated:completionHandler:`
@@ -1470,7 +1474,7 @@ MLN_EXPORT
property may be overridden at any time.
The usage of `automaticallyAdjustsScrollViewInsets` has been deprecated
use the map view’s property `MLNMapView.automaticallyAdjustsContentInset`instead.
use the map view’s property ``MLNMapView/automaticallyAdjustsContentInset``instead.
To specify a completion handler to execute after the animation finishes, use
the `-setContentInset:animated:completionHandler:` method.
@@ -1500,7 +1504,7 @@ MLN_EXPORT
property may be overridden at any time.
The usage of `automaticallyAdjustsScrollViewInsets` has been deprecated
use the map view’s property `MLNMapView.automaticallyAdjustsContentInset`instead.
use the map view’s property ``MLNMapView/automaticallyAdjustsContentInset``instead.
@param contentInset The new values to inset the content by.
@param animated Specify `YES` if you want the map view to animate the change to
@@ -1601,7 +1605,7 @@ MLN_EXPORT
/**
The complete list of annotations associated with the receiver. (read-only)
The objects in this array must adopt the `MLNAnnotation` protocol. If no
The objects in this array must adopt the ``MLNAnnotation`` protocol. If no
annotations are associated with the map view, the value of this property is
`nil`.
*/
@@ -1610,32 +1614,32 @@ MLN_EXPORT
/**
Adds an annotation to the map view.
@note `MLNMultiPolyline`, `MLNMultiPolygon`, `MLNShapeCollection`, and
`MLNPointCollection` objects cannot be added to the map view at this time.
> Note: ``MLNMultiPolyline``, ``MLNMultiPolyline``, ``MLNMultiPolyline``, and
``MLNPointCollection`` objects cannot be added to the map view at this time.
Any multipoint, multipolyline, multipolygon, shape or point collection
object that is specified is silently ignored.
@param annotation The annotation object to add to the receiver. This object
must conform to the `MLNAnnotation` protocol. The map view retains the
must conform to the ``MLNAnnotation`` protocol. The map view retains the
annotation object.
#### Related examples
- TODO: add a line annotation from GeoJSON.
- TODO: add an annotation to an `MLNMapView` object.
- TODO: add an annotation to an ``MLNMapView`` object.
*/
- (void)addAnnotation:(id<MLNAnnotation>)annotation;
/**
Adds an array of annotations to the map view.
@note `MLNMultiPolyline`, `MLNMultiPolygon`, and `MLNShapeCollection` objects
cannot be added to the map view at this time. Nor can `MLNMultiPoint`
objects that are not instances of `MLNPolyline` or `MLNPolygon`. Any
> Note: ``MLNMultiPolyline``, ``MLNMultiPolyline``, and ``MLNMultiPolyline`` objects
cannot be added to the map view at this time. Nor can ``MLNMultiPoint``
objects that are not instances of ``MLNPolyline`` or ``MLNPolyline``. Any
multipoint, multipolyline, multipolygon, or shape collection objects that
are specified are silently ignored.
@param annotations An array of annotation objects. Each object in the array
must conform to the `MLNAnnotation` protocol. The map view retains each
must conform to the ``MLNAnnotation`` protocol. The map view retains each
individual annotation object.
*/
- (void)addAnnotations:(NSArray<id<MLNAnnotation>> *)annotations;
@@ -1648,7 +1652,7 @@ MLN_EXPORT
this method only when you want to hide or delete a given annotation.
@param annotation The annotation object to remove. This object must conform
to the `MLNAnnotation` protocol
to the ``MLNAnnotation`` protocol
*/
- (void)removeAnnotation:(id<MLNAnnotation>)annotation;
@@ -1661,23 +1665,23 @@ MLN_EXPORT
call this method only when you want to hide or delete the given annotations.
@param annotations The array of annotation objects to remove. Objects in the
array must conform to the `MLNAnnotation` protocol.
array must conform to the ``MLNAnnotation`` protocol.
*/
- (void)removeAnnotations:(NSArray<id<MLNAnnotation>> *)annotations;
/**
Returns an `MLNAnnotationView` if the given annotation is currently associated
Returns an ``MLNAnnotationView`` if the given annotation is currently associated
with a view, otherwise nil.
@param annotation The annotation associated with the view.
Annotation must conform to the `MLNAnnotation` protocol.
Annotation must conform to the ``MLNAnnotation`` protocol.
*/
- (nullable MLNAnnotationView *)viewForAnnotation:(id<MLNAnnotation>)annotation;
/**
Returns a reusable annotation image object associated with its identifier.
For performance reasons, you should generally reuse `MLNAnnotationImage`
For performance reasons, you should generally reuse ``MLNAnnotationImage``
objects for identical-looking annotations in your map views. Dequeueing
saves time and memory during performance-critical operations such as
scrolling.
@@ -1690,7 +1694,7 @@ MLN_EXPORT
#### Related examples
- TODO: Add annotation views and images: learn how to most efficiently
reuse an `MLNAnnotationImage`.
reuse an ``MLNAnnotationImage``.
*/
- (nullable __kindof MLNAnnotationImage *)dequeueReusableAnnotationImageWithIdentifier:
(NSString *)identifier;
@@ -1698,7 +1702,7 @@ MLN_EXPORT
/**
Returns a reusable annotation view object associated with its identifier.
For performance reasons, you should generally reuse `MLNAnnotationView`
For performance reasons, you should generally reuse ``MLNAnnotationView``
objects for identical-looking annotations in your map views. Dequeueing
saves time and memory during performance-critical operations such as
scrolling.
@@ -1716,7 +1720,7 @@ MLN_EXPORT
The complete list of annotations associated with the receiver that are
currently visible.
The objects in this array must adopt the `MLNAnnotation` protocol. If no
The objects in this array must adopt the ``MLNAnnotation`` protocol. If no
annotations are associated with the map view or if no annotations associated
with the map view are currently visible, the value of this property is `nil`.
*/
@@ -1727,7 +1731,7 @@ MLN_EXPORT
the given rectangle.
@param rect A rectangle expressed in the map view’s coordinate system.
@return An array of objects that adopt the `MLNAnnotation` protocol or `nil` if
@return An array of objects that adopt the ``MLNAnnotation`` protocol or `nil` if
no annotations associated with the map view are currently visible in the
rectangle.
*/
@@ -1741,11 +1745,11 @@ MLN_EXPORT
Assigning a new array to this property selects only the first annotation in
the array.
If the annotation is of type `MLNPointAnnotation` and is offscreen, the camera
If the annotation is of type ``MLNPointAnnotation`` and is offscreen, the camera
will animate to bring the annotation and its callout just on screen. If you
need finer control, consider using `-selectAnnotation:animated:`.
@note In versions prior to `4.0.0` if the annotation was offscreen it was not
> Note: In versions prior to `4.0.0` if the annotation was offscreen it was not
selected.
*/
@property (nonatomic, copy) NSArray<id<MLNAnnotation>> *selectedAnnotations;
@@ -1761,8 +1765,8 @@ MLN_EXPORT
| `NO` | The annotation is selected, and the callout is presented. However the map is
not panned to bring the annotation or callout into view. The presentation of the callout is NOT
animated. | | `YES` | The annotation is selected, and the callout is presented. If the
annotation is not visible (or is partially visible) *and* is of type `MLNPointAnnotation`, the map
is panned so that the annotation and its callout are brought into view. The annotation is *not*
annotation is not visible (or is partially visible) *and* is of type ``MLNPointAnnotation``, the
map is panned so that the annotation and its callout are brought into view. The annotation is *not*
centered within the viewport. |
Note that a selection initiated by a single tap gesture is always animated.
@@ -1773,7 +1777,7 @@ MLN_EXPORT
@param annotation The annotation object to select.
@param animated If `YES`, the annotation and callout view are animated on-screen.
@note In versions prior to `4.0.0` selecting an offscreen annotation did not
> Note: In versions prior to `4.0.0` selecting an offscreen annotation did not
change the camera.
*/
- (void)selectAnnotation:(id<MLNAnnotation>)annotation
@@ -1792,8 +1796,8 @@ MLN_EXPORT
| `NO` | The annotation is selected, and the callout is presented. However the map is
not panned to bring the annotation or callout into view. The presentation of the callout is NOT
animated. | | `YES` | The annotation is selected, and the callout is presented. If the
annotation is not visible (or is partially visible) *and* is of type `MLNPointAnnotation`, the map
is panned so that the annotation and its callout are brought into view. The annotation is *not*
annotation is not visible (or is partially visible) *and* is of type ``MLNPointAnnotation``, the
map is panned so that the annotation and its callout are brought into view. The annotation is *not*
centered within the viewport. |
Note that a selection initiated by a single tap gesture is always animated.
@@ -1802,7 +1806,7 @@ MLN_EXPORT
@param animated If `YES`, the annotation and callout view are animated on-screen.
@param completion The block executed after the animation finishes.
@note In versions prior to `4.0.0` selecting an offscreen annotation did not
> Note: In versions prior to `4.0.0` selecting an offscreen annotation did not
change the camera.
*/
- (void)selectAnnotation:(id<MLNAnnotation>)annotation
@@ -1817,7 +1821,7 @@ MLN_EXPORT
@param annotation The annotation object to select.
@param moveIntoView If the annotation is not visible (or is partially visible) *and* is of type
`MLNPointAnnotation`, the map is panned so that the annotation and its callout are brought into
``MLNPointAnnotation``, the map is panned so that the annotation and its callout are brought into
view. The annotation is *not* centered within the viewport.
@param animateSelection If `YES`, the annotation's selection state and callout view's presentation
are animated.
@@ -1841,7 +1845,7 @@ MLN_EXPORT
/**
The complete list of overlays associated with the receiver. (read-only)
The objects in this array must adopt the `MLNOverlay` protocol. If no
The objects in this array must adopt the ``MLNOverlay`` protocol. If no
overlays are associated with the map view, the value of this property is
empty array.
*/
@@ -1853,7 +1857,7 @@ MLN_EXPORT
To remove an overlay from a map, use the `-removeOverlay:` method.
@param overlay The overlay object to add. This object must conform to the
`MLNOverlay` protocol. */
``MLNOverlay`` protocol. */
- (void)addOverlay:(id<MLNOverlay>)overlay;
/**
@@ -1862,7 +1866,7 @@ MLN_EXPORT
To remove multiple overlays from a map, use the `-removeOverlays:` method.
@param overlays An array of objects, each of which must conform to the
`MLNOverlay` protocol.
``MLNOverlay`` protocol.
*/
- (void)addOverlays:(NSArray<id<MLNOverlay>> *)overlays;
@@ -1881,7 +1885,7 @@ MLN_EXPORT
If a given overlay object is not associated with the map view, it is ignored.
@param overlays An array of objects, each of which conforms to the `MLNOverlay`
@param overlays An array of objects, each of which conforms to the ``MLNOverlay``
protocol.
*/
- (void)removeOverlays:(NSArray<id<MLNOverlay>> *)overlays;
@@ -1897,12 +1901,12 @@ MLN_EXPORT
information about searching for map features, see that method’s documentation.
@param point A point expressed in the map view’s coordinate system.
@return An array of objects conforming to the `MLNFeature` protocol that
@return An array of objects conforming to the ``MLNFeature`` protocol that
represent features in the sources used by the current style.
#### Related examples
- TODO: Select a feature within a layer: to learn how to query an
`MLNMapView` object for visible `MLNFeature` objects.
``MLNMapView`` object for visible ``MLNMapView`` objects.
*/
- (NSArray<id<MLNFeature>> *)visibleFeaturesAtPoint:(CGPoint)point
NS_SWIFT_NAME(visibleFeatures(at:));
@@ -1921,7 +1925,7 @@ MLN_EXPORT
@param styleLayerIdentifiers A set of strings that correspond to the names
of layers defined in the current style. Only the features contained in
these layers are included in the returned array.
@return An array of objects conforming to the `MLNFeature` protocol that
@return An array of objects conforming to the ``MLNFeature`` protocol that
represent features in the sources used by the current style.
*/
- (NSArray<id<MLNFeature>> *)visibleFeaturesAtPoint:(CGPoint)point
@@ -1936,8 +1940,8 @@ MLN_EXPORT
Each object in the returned array represents a feature rendered by the
current style and provides access to attributes specified by the relevant map
content sources. The returned array includes features loaded by
`MLNShapeSource` and `MLNVectorTileSource` objects but does not include
anything from `MLNRasterTileSource` objects, or from video or canvas sources,
``MLNShapeSource`` and ``MLNShapeSource`` objects but does not include
anything from ``MLNRasterTileSource`` objects, or from video or canvas sources,
which are unsupported by this SDK.
The returned features are drawn by a style layer in the current style. For
@@ -1947,7 +1951,7 @@ MLN_EXPORT
property set to `bus`. If you pass a point corresponding to the location of a
bus stop into this method, the bus stop feature does not appear in the
resulting array. On the other hand, if the style does include bus stops, an
`MLNFeature` object representing that bus stop is returned and its
``MLNFeature`` object representing that bus stop is returned and its
`featureAttributes` dictionary has the `maki` key set to `bus` (along with
other attributes). The dictionary contains only the attributes provided by the
tile source; it does not include computed attribute values or rules about how
@@ -1970,28 +1974,21 @@ MLN_EXPORT
Only visible features are returned. To obtain features regardless of
visibility, use the
`-[MLNVectorTileSource featuresInSourceLayersWithIdentifiers:predicate:]` and
`-[MLNShapeSource featuresMatchingPredicate:]` methods on the relevant sources.
``MLNVectorTileSource/featuresInSourceLayersWithIdentifiers:predicate:`` and
``MLNShapeSource/featuresMatchingPredicate:`` methods on the relevant sources.
The returned features may also include features corresponding to annotations.
These features are not object-equal to the `MLNAnnotation` objects that were
These features are not object-equal to the ``MLNAnnotation`` objects that were
originally added to the map. To query the map for annotations, use
`visibleAnnotations` or `-[MLNMapView visibleAnnotationsInRect:]`.
`visibleAnnotations` or ``MLNMapView/visibleAnnotationsInRect:``.
@note Layer identifiers are not guaranteed to exist across styles or different
versions of the same style. Applications that use this API must first set
the style URL to an explicitly versioned style using a convenience method
like `+[MLNStyle outdoorsStyleURLWithVersion:]`, `MLNMapView`’s “Style URL”
inspectable in Interface Builder, or a manually constructed `NSURL`. This
approach also avoids layer identifer name changes that will occur in the
default style’s layers over time.
@param point A point expressed in the map view’s coordinate system.
@param styleLayerIdentifiers A set of strings that correspond to the names of
layers defined in the current style. Only the features contained in these
layers are included in the returned array.
@param predicate A predicate to filter the returned features.
@return An array of objects conforming to the `MLNFeature` protocol that
@return An array of objects conforming to the ``MLNFeature`` protocol that
represent features in the sources used by the current style.
*/
- (NSArray<id<MLNFeature>> *)visibleFeaturesAtPoint:(CGPoint)point
@@ -2010,7 +2007,7 @@ MLN_EXPORT
information about searching for map features, see that method’s documentation.
@param rect A rectangle expressed in the map view’s coordinate system.
@return An array of objects conforming to the `MLNFeature` protocol that
@return An array of objects conforming to the ``MLNFeature`` protocol that
represent features in the sources used by the current style.
*/
- (NSArray<id<MLNFeature>> *)visibleFeaturesInRect:(CGRect)rect NS_SWIFT_NAME(visibleFeatures(in:));
@@ -2029,7 +2026,7 @@ MLN_EXPORT
@param styleLayerIdentifiers A set of strings that correspond to the names of
layers defined in the current style. Only the features contained in these
layers are included in the returned array.
@return An array of objects conforming to the `MLNFeature` protocol that
@return An array of objects conforming to the ``MLNFeature`` protocol that
represent features in the sources used by the current style.
*/
- (NSArray<id<MLNFeature>> *)visibleFeaturesInRect:(CGRect)rect
@@ -2045,8 +2042,8 @@ MLN_EXPORT
Each object in the returned array represents a feature rendered by the
current style and provides access to attributes specified by the relevant map
content sources. The returned array includes features loaded by
`MLNShapeSource` and `MLNVectorTileSource` objects but does not include
anything from `MLNRasterTileSource` objects, or from video or canvas sources,
``MLNShapeSource`` and ``MLNShapeSource`` objects but does not include
anything from ``MLNRasterTileSource`` objects, or from video or canvas sources,
which are unsupported by this SDK.
The returned features are drawn by a style layer in the current style. For
@@ -2054,7 +2051,7 @@ MLN_EXPORT
but none of the specified style layers includes features that have the `maki`
property set to `bus`. If you pass a rectangle containing the location of a bus
stop into this method, the bus stop feature does not appear in the resulting
array. On the other hand, if the style does include bus stops, an `MLNFeature`
array. On the other hand, if the style does include bus stops, an ``MLNFeature``
object representing that bus stop is returned and its `featureAttributes`
dictionary has the `maki` key set to `bus` (along with other attributes). The
dictionary contains only the attributes provided by the tile source; it does
@@ -2079,31 +2076,15 @@ MLN_EXPORT
Only visible features are returned. To obtain features regardless of
visibility, use the
`-[MLNVectorTileSource featuresInSourceLayersWithIdentifiers:predicate:]` and
`-[MLNShapeSource featuresMatchingPredicate:]` methods on the relevant sources.
@note Layer identifiers are not guaranteed to exist across styles or different
versions of the same style. Applications that use this API must first set the
style URL to an explicitly versioned style using a convenience method like
`+[MLNStyle outdoorsStyleURLWithVersion:]`, `MLNMapView`’s “Style URL”
inspectable in Interface Builder, or a manually constructed `NSURL`. This
approach also avoids layer identifer name changes that will occur in the
default style’s layers over time.
@note Layer identifiers are not guaranteed to exist across styles or different
versions of the same style. Applications that use this API must first set
the style URL to an explicitly versioned style using a convenience method
like `+[MLNStyle outdoorsStyleURLWithVersion:]`, `MLNMapView`’s “Style URL”
inspectable in Interface Builder, or a manually constructed `NSURL`. This
approach also avoids layer identifer name changes that will occur in the
default style’s layers over time.
``MLNVectorTileSource/featuresInSourceLayersWithIdentifiers:predicate:`` and
``MLNShapeSource/featuresMatchingPredicate:`` methods on the relevant sources.
@param rect A rectangle expressed in the map view’s coordinate system.
@param styleLayerIdentifiers A set of strings that correspond to the names of
layers defined in the current style. Only the features contained in these
layers are included in the returned array.
@param predicate A predicate to filter the returned features.
@return An array of objects conforming to the `MLNFeature` protocol that
@return An array of objects conforming to the ``MLNFeature`` protocol that
represent features in the sources used by the current style.
*/
- (NSArray<id<MLNFeature>> *)visibleFeaturesInRect:(CGRect)rect

View File

@@ -306,7 +306,7 @@ const CGFloat MLNAnnotationImagePaddingForCallout = 1;
const CGSize MLNAnnotationAccessibilityElementMinimumSize = CGSizeMake(10, 10);
/// The number of view annotations (excluding the user location view) that must
/// be descendents of `MLNMapView` before presentsWithTransaction is enabled.
/// be descendents of ``MLNMapView`` before presentsWithTransaction is enabled.
static const NSUInteger MLNPresentsWithTransactionAnnotationCount = 0;
/// An indication that the requested annotation was not found or is nonexistent.
@@ -451,7 +451,7 @@ public:
MLNAnnotationTagContextMap _annotationContextsByAnnotationTag;
MLNAnnotationObjectTagMap _annotationTagsByAnnotation;
/// Tag of the selected annotation. If the user location annotation is selected, this ivar is set to `MLNAnnotationTagNotFound`.
/// Tag of the selected annotation. If the user location annotation is selected, this ivar is set to ``MLNAnnotationTagNotFound``.
MLNAnnotationTag _selectedAnnotationTag;
BOOL _userLocationAnnotationIsSelected;
@@ -5440,7 +5440,7 @@ static void *windowScreenContext = &windowScreenContext;
// marginInsetsHintForPresentationFromRect: - in this case we need to
// ensure that partially off-screen annotations are NOT moved into view.
//
// We may want to create (and fallback to) an `MLNMapViewDelegate` version
// We may want to create (and fallback to) an ``MLNMapViewDelegate`` version
// of the `-[MLNCalloutView marginInsetsHintForPresentationFromRect:]
// protocol method.
bounds = CGRectInset(bounds, -calloutPositioningRect.size.width, -calloutPositioningRect.size.height);

View File

@@ -9,9 +9,9 @@ NS_ASSUME_NONNULL_BEGIN
@class MLNUserLocationAnnotationViewStyle;
/**
The `MLNMapViewDelegate` protocol defines a set of optional methods that you
The ``MLNMapViewDelegate`` protocol defines a set of optional methods that you
can use to receive map-related update messages. Because many map operations
require the `MLNMapView` class to load data asynchronously, the map view calls
require the ``MLNMapView`` class to load data asynchronously, the map view calls
these methods to notify your application when specific operations complete. The
map view also uses these methods to request information about annotations
displayed on the map, such as the styles and interaction modes to apply to
@@ -73,7 +73,8 @@ NS_ASSUME_NONNULL_BEGIN
@return A Boolean value indicating whether the map view should stay at
`oldCamera` or transition to `newCamera`.
@note If this method is implemented `-mapView:shouldChangeFromCamera:toCamera:` will not be called.
> Note: If this method is implemented `-mapView:shouldChangeFromCamera:toCamera:` will not be
called.
*/
- (BOOL)mapView:(MLNMapView *)mapView
shouldChangeFromCamera:(MLNMapCamera *)oldCamera
@@ -102,7 +103,7 @@ NS_ASSUME_NONNULL_BEGIN
@param animated Whether the change will cause an animated effect on the map.
@param reason The reason for the camera change.
@note If this method is implemented `-mapView:regionWillChangeAnimated:` will not be called.
> Note: If this method is implemented `-mapView:regionWillChangeAnimated:` will not be called.
*/
- (void)mapView:(MLNMapView *)mapView
regionWillChangeWithReason:(MLNCameraChangeReason)reason
@@ -113,7 +114,7 @@ NS_ASSUME_NONNULL_BEGIN
This method is called as the currently displayed map camera changes as part of
an animation, whether due to a user gesture or due to a call to a method such
as `-[MLNMapView setCamera:animated:]`. This method can be called before
as ``MLNMapView/setCamera:animated:``. This method can be called before
`-mapViewDidFinishLoadingMap:` is called.
During the animation, this method may be called many times to report updates to
@@ -134,7 +135,7 @@ NS_ASSUME_NONNULL_BEGIN
This method is called as the currently displayed map camera changes as part of
an animation, whether due to a user gesture or due to a call to a method such
as `-[MLNMapView setCamera:animated:]`. This method can be called before
as ``MLNMapView/setCamera:animated:``. This method can be called before
`-mapViewDidFinishLoadingMap:` is called.
During the animation, this method may be called many times to report updates to
@@ -144,7 +145,7 @@ NS_ASSUME_NONNULL_BEGIN
@param mapView The map view whose viewpoint is changing.
@param reason The reason for the camera change.
@note If this method is implemented `-mapViewRegionIsChanging:` will not be called.
> Note: If this method is implemented `-mapViewRegionIsChanging:` will not be called.
*/
- (void)mapView:(MLNMapView *)mapView regionIsChangingWithReason:(MLNCameraChangeReason)reason;
@@ -174,7 +175,7 @@ NS_ASSUME_NONNULL_BEGIN
@param animated Whether the change caused an animated effect on the map.
@param reason The reason for the camera change.
@note If this method is implemented `-mapView:regionDidChangeAnimated:` will not be called.
> Note: If this method is implemented `-mapView:regionDidChangeAnimated:` will not be called.
*/
- (void)mapView:(MLNMapView *)mapView
regionDidChangeWithReason:(MLNCameraChangeReason)reason
@@ -301,7 +302,7 @@ NS_ASSUME_NONNULL_BEGIN
/**
Tells the delegate that the `mapView` is missing an image. The image should be added synchronously
with `-[MLNStyle setImage:forName:]` to be rendered on the current zoom level. When loading icons
with ``MLNStyle/setImage:forName:`` to be rendered on the current zoom level. When loading icons
asynchronously, you can load a placeholder image and replace it when your image has loaded.
@param mapView The map view that is loading the image.
@@ -362,8 +363,8 @@ NS_ASSUME_NONNULL_BEGIN
While the `showsUserLocation` property is set to `YES`, this method is called
whenever a new location update is received by the map view. This method is also
called if the map view’s user tracking mode is set to
`MLNUserTrackingModeFollowWithHeading` and the heading changes, or if it is set
to `MLNUserTrackingModeFollowWithCourse` and the course changes.
``MLNUserTrackingMode/MLNUserTrackingModeFollowWithHeading`` and the heading changes, or if it is
set to ``MLNUserTrackingMode/MLNUserTrackingModeFollowWithCourse`` and the course changes.
This method is not called if the application is currently running in the
background. If you want to receive location updates while running in the
@@ -407,8 +408,8 @@ NS_ASSUME_NONNULL_BEGIN
When unimplemented, the user location annotation is aligned within the center of
the map view with respect to the content insets.
This method will override any values set by `MLNMapView.userLocationVerticalAlignment`
or `-[MLNMapView setUserLocationVerticalAlignment:animated:]`.
This method will override any values set by ``MLNMapView/userLocationVerticalAlignment``
or ``MLNMapView/setUserLocationVerticalAlignment:animated:``.
@param mapView The map view that is tracking the user's location.
*/
@@ -452,7 +453,7 @@ NS_ASSUME_NONNULL_BEGIN
TODO: Annotation models
TODO: Add annotation views and images
TODO: Mark a place on the map with an image, learn to specify which
image should be used for `MLNAnnotation` objects that have been added to
image should be used for ``MLNAnnotation`` objects that have been added to
your map
*/
- (nullable MLNAnnotationImage *)mapView:(MLNMapView *)mapView
@@ -490,7 +491,7 @@ NS_ASSUME_NONNULL_BEGIN
#### Related examples
TODO: Annotation models, learn how to modify the outline color of an
`MLNShape` object that has been added to your map as an annotation.
``MLNShape`` object that has been added to your map as an annotation.
*/
- (UIColor *)mapView:(MLNMapView *)mapView strokeColorForShapeAnnotation:(MLNShape *)annotation;
@@ -509,7 +510,7 @@ NS_ASSUME_NONNULL_BEGIN
#### Related examples
TODO: Add a polygon annotation, learn how to modify the color of a an
`MLNPolygon` at runtime.
``MLNPolygon`` at runtime.
*/
- (UIColor *)mapView:(MLNMapView *)mapView fillColorForPolygonAnnotation:(MLNPolygon *)annotation;
@@ -525,7 +526,7 @@ NS_ASSUME_NONNULL_BEGIN
#### Related examples
TODO: Add a line annotation from GeoJSON, learn how to modify the
line width of an `MLNPolylineFeature` on your map.
line width of an ``MLNPolylineFeature`` on your map.
*/
- (CGFloat)mapView:(MLNMapView *)mapView lineWidthForPolylineAnnotation:(MLNPolyline *)annotation;
@@ -544,8 +545,8 @@ NS_ASSUME_NONNULL_BEGIN
and draw more quickly than annotation views.
The user location annotation view can also be customized via this method. When
`annotation` is an instance of `MLNUserLocation` (or equal to the map view’s
`userLocation` property), return an instance of `MLNUserLocationAnnotationView`
`annotation` is an instance of ``MLNUserLocation`` (or equal to the map view’s
`userLocation` property), return an instance of ``MLNUserLocationAnnotationView``
(or a subclass thereof).
@param mapView The map view that requested the annotation view.
@@ -556,7 +557,7 @@ NS_ASSUME_NONNULL_BEGIN
#### Related examples
TODO: Add annotation views and images, learn how to specify what
`MLNViewAnnotation` to use for a given `MLNPointAnnotation` object on your
``MLNAnnotation`` to use for a given ``MLNAnnotation`` object on your
map.
*/
- (nullable MLNAnnotationView *)mapView:(MLNMapView *)mapView
@@ -570,7 +571,7 @@ NS_ASSUME_NONNULL_BEGIN
implement this method to animate the addition of the annotation views.
@param mapView The map view to which the annotation views were added.
@param annotationViews An array of `MLNAnnotationView` objects representing the
@param annotationViews An array of ``MLNAnnotationView`` objects representing the
views that were added.
*/
- (void)mapView:(MLNMapView *)mapView
@@ -684,7 +685,7 @@ NS_ASSUME_NONNULL_BEGIN
TODO: Add annotation views and images
TODO: Display custom views as callouts
TODO: Default callout usage, learn how to show callouts for
`MLNAnnotation` objects.
``MLNAnnotation`` objects.
*/
- (BOOL)mapView:(MLNMapView *)mapView annotationCanShowCallout:(id<MLNAnnotation>)annotation;
@@ -700,12 +701,12 @@ NS_ASSUME_NONNULL_BEGIN
@param mapView The map view that requested the callout view.
@param annotation The object representing the annotation.
@return A view conforming to the `MLNCalloutView` protocol, or `nil` to use the
@return A view conforming to the ``MLNCalloutView`` protocol, or `nil` to use the
default callout view.
#### Related examples
TODO: Display custom views as callouts, learn how to customize an
`MLNAnnotation` object's `MLNCalloutView`.
``MLNAnnotation`` object's ``MLNAnnotation``.
*/
- (nullable id<MLNCalloutView>)mapView:(MLNMapView *)mapView
calloutViewForAnnotation:(id<MLNAnnotation>)annotation;
@@ -788,7 +789,7 @@ NS_ASSUME_NONNULL_BEGIN
If your custom accessory views are not descendants of the `UIControl` class,
the map view does not call this method. If the annotation has a custom callout
view via the `-mapView:calloutViewForAnnotation:` method, you can specify the
custom accessory views using the `MLNCalloutView` protocol’s
custom accessory views using the ``MLNCalloutView`` protocol’s
`leftAccessoryView` and `rightAccessoryView` properties.
@param mapView The map view containing the specified annotation.
@@ -810,7 +811,7 @@ NS_ASSUME_NONNULL_BEGIN
opposed to the callout’s left or right accessory view. If the annotation has a
custom callout view via the `-mapView:calloutViewForAnnotation:` method, this
method is only called whenever the callout view calls its delegate’s
`-[MLNCalloutViewDelegate calloutViewTapped:]` method.
``MLNCalloutViewDelegate/calloutViewTapped:`` method.
If this method is present on the delegate, the standard callout view’s body
momentarily highlights when the user taps it, whether or not this method does
@@ -821,7 +822,7 @@ NS_ASSUME_NONNULL_BEGIN
#### Related examples
TODO: Display custom views as callouts, learn how to trigger an
action when an `MLNAnnotation`s `MLNCalloutView` is tapped.
action when an ``MLNAnnotation``s ``MLNAnnotation`` is tapped.
*/
- (void)mapView:(MLNMapView *)mapView tapOnCalloutForAnnotation:(id<MLNAnnotation>)annotation;

View File

@@ -9,7 +9,7 @@ NS_ASSUME_NONNULL_BEGIN
/**
The MLNUserLocation class defines a specific type of annotation that identifies
the user’s current location. You do not create instances of this class
directly. Instead, you retrieve an existing `MLNUserLocation` object from the
directly. Instead, you retrieve an existing ``MLNUserLocation`` object from the
`userLocation` property of the map view displayed in your application.
#### Related examples
@@ -38,8 +38,8 @@ MLN_EXPORT
The heading of the user location. (read-only)
This property is `nil` if the user location tracking mode is not
`MLNUserTrackingModeFollowWithHeading` or if
`MLNMapView.showsUserHeadingIndicator` is disabled.
``MLNUserTrackingMode/MLNUserTrackingModeFollowWithHeading`` or if
``MLNMapView/showsUserHeadingIndicator`` is disabled.
*/
@property (nonatomic, readonly, nullable) CLHeading *heading;

View File

@@ -9,7 +9,7 @@ NS_ASSUME_NONNULL_BEGIN
@class MLNMapView;
@class MLNUserLocation;
/** View representing an `MLNUserLocation` on screen. */
/** View representing an ``MLNUserLocation`` on screen. */
MLN_EXPORT
@interface MLNUserLocationAnnotationView : MLNAnnotationView
@@ -51,7 +51,7 @@ MLN_EXPORT
user interaction, a change in the user’s location, when the user tracking mode
changes, or when the viewport changes.
@note During user interaction with the map, this method may be called many
> Note: During user interaction with the map, this method may be called many
times to update the user location annotation. Therefore, your implementation of
this method should be as lightweight as possible to avoid negatively affecting
performance.