ArcGIS Runtime SDK for iOS
100.15
|
A view component to display 2D geographic content such as maps.
Instances of this class represent views that can display 2D geographic content such as maps on screen. In an MVC architecture, this class represents the view tier and is a type of UIView
on iOS or NSView
on Mac. The Model tier is represented by the AGSMap
object which contains the geographic content.
To display a map, add an AGSMapView
object to your view controller's view heirarchy. You can do this either using Interface Builder and Storyboards, or programmatically in code. Next, assign an AGSMap
object to the mapview. The mapview will automatically load the map, its basemap, and operational layers, and display their contents on screen.
To navigate the map, you can use touch gestures such as double-tap, drag, two-finger tap, etc on iOS, and the mouse/trackpad, and keyboard shortcuts on Mac OS. You can also programmatically change the viewpoint(setViewpoint: (AGSGeoView)) with or without animation.
The mapview informs it's touch delegate whenever touch/mouse/trackpad/keyboard events are associated with it. You can set your class as the touch delegate to be notified of these events.
AGSSceneView
to display 3D geographic content such as scenes. - (nullable AGSViewpoint*) currentViewpointWithType: | (AGSViewpointType) | viewpointType |
Gets the current viewpoint being displayed. For an AGSMapView
, this takes into account the attribution bar and any contentInset
that has been specified to return only the unobscured portion of the map.
viewpointType | specifying how the viewpoint should be represented. |
- (id<AGSCancelable>) exportImageWithCompletion: | (void(^)(AGSImage *__nullable image, NSError *__nullable error)) | completion |
Provides an image depicting the view's current display.
completion | block that is invoked when the operation completes. |
- (id<AGSCancelable>) identifyGraphicsOverlay: | (AGSGraphicsOverlay *) | graphicsOverlay | |
screenPoint: | (CGPoint) | screenPoint | |
tolerance: | (double) | tolerance | |
returnPopupsOnly: | (BOOL) | returnPopupsOnly | |
completion: | (void(^)(AGSIdentifyGraphicsOverlayResult *identifyResult)) | completion | |
Identify (hit-test) the top-most graphic that appears at the specified screen coordinates in the provided graphics overlay.
graphicsOverlay | in which to identify graphics. |
screenPoint | at which to identify graphics. |
tolerance | radius in points specifying how precise the identify operation should be. A value of 0 means that it should be extremely precise - only those graphics appearing at the exact coordinates should be returned. A value of 22 (a good default for touch displays which covers an average finger tap) means graphics appearing within a 44pt buffer can also be returned. Max value permitted is 100. |
returnPopupsOnly | specifies what the identify results should contain. If set to YES , only overlays with popups will be retured. If set to NO , all overlays (with or without popups) will be retured. |
completion | block that is invoked when the operation is complete with the result. |
- (id<AGSCancelable>) identifyGraphicsOverlay: | (AGSGraphicsOverlay *) | graphicsOverlay | |
screenPoint: | (CGPoint) | screenPoint | |
tolerance: | (double) | tolerance | |
returnPopupsOnly: | (BOOL) | returnPopupsOnly | |
maximumResults: | (NSInteger) | maximumResults | |
completion: | (void(^)(AGSIdentifyGraphicsOverlayResult *identifyResult)) | completion | |
Identify (hit-test) which graphics appear at the specified screen coordinates in the provided graphics overlay.
graphicsOverlay | in which to identify graphics. |
screenPoint | at which to identify graphics. |
tolerance | radius in points specifying how precise the identify operation should be. A value of 0 means that it should be extremely precise - only those graphics appearing at the exact coordinates should be returned. A value of 22 (a good default for touch displays which covers an average finger tap) means graphics appearing within a 44 pt buffer can also be returned. Max value permitted is 100. |
returnPopupsOnly | specifies what the identify results should contain. If set to YES, only overlays with popups will be retured. If set to NO, all overlays (with or without popups) will be retured. |
maximumResults | that should be returned as the result. |
completion | block that is invoked when the operation is complete with the result. |
- (id<AGSCancelable>) identifyGraphicsOverlaysAtScreenPoint: | (CGPoint) | screenPoint | |
tolerance: | (double) | tolerance | |
returnPopupsOnly: | (BOOL) | returnPopupsOnly | |
completion: | (void(^)(NSArray< AGSIdentifyGraphicsOverlayResult * > *__nullable identifyResults, NSError *__nullable error)) | completion | |
Identify (hit-test) the top-most graphic that appears at the specified screen coordinates in all the graphics overlays.
screenPoint | at which to identify graphics. |
tolerance | radius in points specifying how precise the identify operation should be. A value of 0 means that it should be extremely precise - only those graphics at that exact coordinates should be returned. A value of 22 (a good default for touch displays which covers an average finger tap) means graphics within a 44pt buffer can also be returned. Max value permitted is 100. |
returnPopupsOnly | specifies what the identify results should contain. If set to YES , only overlays with popups will be retured. If set to NO , all overlays (with or without popups) will be retured. |
completion | block that is invoked when the operation is complete with either the results or an error. |
- (id<AGSCancelable>) identifyGraphicsOverlaysAtScreenPoint: | (CGPoint) | screenPoint | |
tolerance: | (double) | tolerance | |
returnPopupsOnly: | (BOOL) | returnPopupsOnly | |
maximumResultsPerOverlay: | (NSInteger) | maximumResultsPerOverlay | |
completion: | (void(^)(NSArray< AGSIdentifyGraphicsOverlayResult * > *__nullable identifyResults, NSError *__nullable error)) | completion | |
Identify (hit-test) which graphics appear at the specified screen coordinates in all the graphics overlays.
screenPoint | at which to identify graphics. |
tolerance | radius in points specifying how precise the identify operation should be. A value of 0 means that it should be extremely precise - only those graphics at that exact coordinates should be returned. A value of 22 (a good default for touch displays which covers an average finger tap) means graphics within a 44pt buffer can also be returned. Max value permitted is 100. |
returnPopupsOnly | specifies what the identify results should contain. If set to YES, only overlays with popups will be retured. If set to NO, all overlays (with or without popups) will be retured. |
maximumResultsPerOverlay | that should be returned for each overlay in the result. |
completion | block that is invoked when the operation is complete with either the results or an error. |
- (id<AGSCancelable>) identifyLayer: | (AGSLayer *) | layer | |
screenPoint: | (CGPoint) | screenPoint | |
tolerance: | (double) | tolerance | |
returnPopupsOnly: | (BOOL) | returnPopupsOnly | |
completion: | (void(^)(AGSIdentifyLayerResult *identifyResult)) | completion | |
Identify (hit-test and/or spatially query) the top-most feature that appears at the specified screen coordinates in the provided layer.
layer | in which to identify features. |
screenPoint | at which to identify features. |
tolerance | radius in points specifying how precise the identify operation should be. A value of 0 means that it should be extremely precise - only those features appearing at the exact coordinates should be returned. A value of 22 (a good default for touch displays which covers an average finger tap) means features appearing within a 44pt buffer can also be returned. Max value permitted is 100. |
returnPopupsOnly | specifies what the identify results should contain. If set to YES , only layers with popups will be retured. If the layer does not have popups an error will be returned. If set to NO , all layers (with or without popups) will be retured. |
completion | block that is invoked when the operation is complete with the result. |
- (id<AGSCancelable>) identifyLayer: | (AGSLayer *) | layer | |
screenPoint: | (CGPoint) | screenPoint | |
tolerance: | (double) | tolerance | |
returnPopupsOnly: | (BOOL) | returnPopupsOnly | |
maximumResults: | (NSInteger) | maximumResults | |
completion: | (void(^)(AGSIdentifyLayerResult *identifyResult)) | completion | |
Identify (hit-test and/or spatially query) all features that appear at the specified screen coordinates in the provided layer.
layer | in which to identify features. |
screenPoint | at which to identify features. |
tolerance | radius in points specifying how precise the identify operation should be. A value of 0 means that it should be extremely precise - only those features appearing at the exact coordinates should be returned. A value of 22 (a good default for touch displays which covers an average finger tap) means features appearing within a 44pt buffer can also be returned. Max value permitted is 100. |
returnPopupsOnly | specifies what the identify results should contain. If set to YES , only layers with popups will be retured. If the layer does not have popups an error will be returned. If set to NO , all layers (with or without popups) will be retured. |
maximumResults | to return. |
completion | block that is invoked when the operation is complete with the result. |
- (id<AGSCancelable>) identifyLayersAtScreenPoint: | (CGPoint) | screenPoint | |
tolerance: | (double) | tolerance | |
returnPopupsOnly: | (BOOL) | returnPopupsOnly | |
completion: | (void(^)(NSArray< AGSIdentifyLayerResult * > *__nullable identifyResults, NSError *__nullable error)) | completion | |
Identify (hit-test and/or spatially query) the top-most feature that appears at the specified screen coordinates in each of the map's layers.
screenPoint | at which to identify features. |
tolerance | radius in points specifying how precise the identify operation should be. A value of 0 means that it should be extremely precise - only those features appearing at the exact coordinates should be returned. A value of 22 (a good default for touch displays which covers an average finger tap) means features appearing within a 44pt buffer can also be returned. Max value permitted is 100. |
returnPopupsOnly | specifies what the identify results should contain. If set to YES , only layers with popups will be retured. If the layer does not have popups an error will be returned. If set to NO , all layers (with or without popups) will be retured. |
completion | block that is invoked when the operation is complete with either the results or an error. |
- (id<AGSCancelable>) identifyLayersAtScreenPoint: | (CGPoint) | screenPoint | |
tolerance: | (double) | tolerance | |
returnPopupsOnly: | (BOOL) | returnPopupsOnly | |
maximumResultsPerLayer: | (NSInteger) | maximumResultsPerLayer | |
completion: | (void(^)(NSArray< AGSIdentifyLayerResult * > *__nullable identifyResults, NSError *__nullable error)) | completion | |
Identify (hit-test and/or spatially query) which features appear at the specified screen coordinates in all the map's layers.
screenPoint | at which to identify features. |
tolerance | radius in points specifying how precise the identify operation should be. A value of 0 means that it should be extremely precise - only those features appearing at the exact coordinates should be returned. A value of 22 (a good default for touch displays which covers an average finger tap) means features appearing within a 44pt buffer can also be returned. Max value permitted is 100. |
returnPopupsOnly | specifies what the identify results should contain. If set to YES , only layers with popups will be retured. If the layer does not have popups an error will be returned. If set to NO , all layers (with or without popups) will be retured. |
maximumResultsPerLayer | to return. |
completion | block that is invoked when the operation is complete with either the results or an error. |
- (nullable AGSLayerViewState*) layerViewStateForLayer: | (AGSLayer *) | layer |
Get the current view state for a map or scene layer.
layer | to get the view state for. |
- (CGPoint) locationToScreen: | (AGSPoint *) | mapLocation |
Converts the specified location in map units to a point in screen units.
mapLocation | to convert. |
- (AGSPoint*) screenToLocation: | (CGPoint) | screen |
Converts the specified screen point to a map location.
screen | point to convert. |
- (id<AGSCancelable>) setBookmark: | (AGSBookmark *) | bookmark | |
completion: | (nullable void(^)(BOOL finished)) | completion | |
Zoom or pan with animation to the viewpoint specified by the provided bookmark.
bookmark | whose viewpoint will be used to pan/zoom to. |
completion | block which is invoked when operation completes. The finished argument indicates whether the animation continued until the end without any interruption. |
- (void) setViewpoint: | (AGSViewpoint *) | viewpoint |
Zoom or pan without animation to the specified viewpoint.
viewpoint | to zoom/pan to. |
- setViewpoint:completion:
to zoom/pan with animation. - (id<AGSCancelable>) setViewpoint: | (AGSViewpoint *) | viewpoint | |
completion: | (nullable void(^)(BOOL finished)) | completion | |
Zoom or pan with animation to the specified viewpoint. Animates over 0.25 seconds. See setViewpoint:duration:completion:
to set viewpoint that animates over a specific duration.
viewpoint | to zoom/pan to. |
completion | block which is invoked when operation completes. The finished argument indicates whether the animation continued until the end without any interruption. |
- (id<AGSCancelable>) setViewpoint: | (AGSViewpoint *) | viewpoint | |
duration: | (double) | duration | |
completion: | (nullable void(^)(BOOL finished)) | completion | |
Zoom or pan with animation to the specified viewpoint. Animates over the specified duration.
viewpoint | to zoom/pan to. |
duration | for the zoom/pan animation in seconds. |
completion | block which is invoked when operation completes. The finished argument indicates whether the animation continued until the end without any interruption. |
- (id<AGSCancelable>) setViewpoint: | (AGSViewpoint *) | viewpoint | |
duration: | (double) | duration | |
curve: | (AGSAnimationCurve) | curve | |
completion: | (nullable void(^)(BOOL finished)) | completion | |
Zoom or pan the map with animation to the specified viewpoint.
viewpoint | to zoom/pan to. |
duration | for the zoom/pan animation. |
curve | Type of animation. |
completion | block which is invoked when operation completes. The finished argument indicates whether animation finished without any user interruption. |
setViewpoint
... animation will be canceled upon calling this method. If you want to chain together mulitple animations, wait for the prior animation to complete before calling this method. - (id<AGSCancelable>) setViewpointCenter: | (AGSPoint *) | center | |
completion: | (nullable void(^)(BOOL finished)) | completion | |
Zoom or pan the map with animation to the specified location.
center | Location on which the map should be centered. |
completion | A block which is invoked when operation completes. The finished argument indicates whether animation finished without any user interruption. |
setViewpoint
... animation will be canceled upon calling this method. If you want to chain together mulitple animations, wait for the prior animation to complete before calling this method. - (id<AGSCancelable>) setViewpointCenter: | (AGSPoint *) | center | |
scale: | (double) | scale | |
completion: | (nullable void(^)(BOOL finished)) | completion | |
Zoom or pan the map with animation to the specified location.
center | Location on which the map should be centered. |
scale | The scale to which the map should be zoomed to. |
completion | A block which is invoked when operation completes. The finished argument indicates whether animation finished without any user interruption. |
setViewpoint
... animation will be canceled upon calling this method. If you want to chain together mulitple animations, wait for the prior animation to complete before calling this method. - (id<AGSCancelable>) setViewpointGeometry: | (AGSGeometry *) | geometry | |
completion: | (nullable void(^)(BOOL finished)) | completion | |
Zoom or pan the map with animation such that the given geometry fits the bounds of the map.
geometry | to fit to the bounds of the map. |
completion | block which is invoked when operation completes. The finished argument indicates whether animation finished without any user interruption. |
setViewpoint
... animation will be canceled upon calling this method. If you want to chain together mulitple animations, wait for the prior animation to complete before calling this method. - (id<AGSCancelable>) setViewpointGeometry: | (AGSGeometry *) | geometry | |
padding: | (double) | paddingInScreenPoints | |
completion: | (nullable void(^)(BOOL finished)) | completion | |
Zoom or pan the map with animation such that the given geometry fits the bounds of the map.
geometry | to fit to the bounds of the map. |
paddingInScreenPoints | to pad in each direction while fitting the geometry. |
completion | block which is invoked when operation completes. The finished argument indicates whether animation finished without any user interruption. |
setViewpoint
... animation will be canceled upon calling this method. If you want to chain together mulitple animations, wait for the prior animation to complete before calling this method. - (id<AGSCancelable>) setViewpointRotation: | (double) | angle | |
completion: | (nullable void(^)(BOOL finished)) | completion | |
Rotate the map with animation to the specified angle.
angle | in degress to rotate to (in counter-clockwise direction). |
completion | block which is invoked when operation completes. The finished argument indicates whether animation finished without any user interruption. |
setViewpoint
... animation will be canceled upon calling this method. If you want to chain together mulitple animations, wait for the prior animation to complete before calling this method. - (id<AGSCancelable>) setViewpointScale: | (double) | scale | |
completion: | (nullable void(^)(BOOL finished)) | completion | |
Zoom the map with animation to the specified scale around its current center.
scale | to which the map should be zoomed to. |
completion | block which is invoked when operation completes. The finished argument indicates whether animation finished without any user interruption. |
setViewpoint
... animation will be canceled upon calling this method. If you want to chain together mulitple animations, wait for the prior animation to complete before calling this method.
|
readnonatomicassigninherited |
The insets derived from the content inset, the height of the attribution bar, and (on iOS) the safe area insets. For iOS, the insetsContentInsetFromSafeArea
property determines whether the safe area insets are included in the adjustment.
|
readnonatomiccopyinherited |
Attribution for the geographic data currently being displayed in the view. This information is displayed in a banner along the bottom edge of the view. The attribution text changes can be monitored using Key-Value Observing (KVO).
|
readwritenonatomicassigninherited |
Specifies whether the attribution text banner (along the bottom edge of the view) should be visible. Defaults to YES
.
|
readnonatomicstronginherited |
The NSLayoutAnchor
you can use to layout views in relationship to the attribution text on the AGSGeoView
. This is helpful if you want to place a view just above the attribution text. And when the attribution text is collapsed or expanded your view will automatically move to the correct location in relation to the attribution text.
|
readwritenonatomicstronginherited |
Various settings applied to the map view's background. The background grid determines the color and context grid of a map view when no AGSMapView::map
property has been set.
The AGSMap
displays on top of the background grid or the optional AGSMap::backgroundColor
property to determine what is displayed under transparent areas of the map.
If AGSMap::backgroundColor
is not nil
, then AGSMapView::backgroundGrid
is ignored and AGSMap::backgroundColor
will be used as the background color of the map.
AGSMap::backgroundColor
|
readnonatomicstronginherited |
A callout view for displaying information on the map.
|
readwritenonatomicassigninherited |
Defines the edges where the AGSMapView
is obscured by some other UI. This is important so that callouts display correctly, the location display is anchored appropriately, and setting a new viewpoint adjusts the map contents to correctly display in the unobscured part of the view. Setting this will affect the visibleArea
that is reported by the AGSMapView
.
|
readnonatomicassigninherited |
Current drawing status of the view's content (map or scene). The draw status changes can be monitored using Key-Value Observing (KVO).
|
readnonatomicstronginherited |
A list of AGSGraphicsOverlay
objects that can be used to display graphics on top of the view's content.
|
readwritenonatomicstronginherited |
The coordinate system grid to display on top of the map.
|
readwritenonatomicassigninherited |
Indicates whether the content inset is relative to the safe area. When YES
, the content inset is interpreted as a value relative to the safe area. When NO
, the content inset is interpreted as a value from the edge of bounds. Defaults to YES
.
|
readwritenonatomicstronginherited |
Options to configure user interactions with the view.
|
readwritenonatomicstronginherited |
The view label properties.
The view label properties are an overall control for whether labels will be created and displayed for layers added to the view. Individual layers can also control whether labels should be displayed for their features. Labels need to be enabled both in the view and in the layer. By default the labeling for a view is enabled. The view label properties also control global aspects of the label appearance e.g. animation effects.
AGSViewLabelProperties
|
readwritenonatomiccopyinherited |
Block that is invoked whenever any map or scene layer's view state changes.
|
readwritenonatomicstronginherited |
Displays device location on the map from a datasource such as a GPS sensor.
|
readwritenonatomicstronginherited |
The map to be displayed by this map view. The map view loads the map and all of its layers in order to display their content on screen.
|
readnonatomicassigninherited |
The current scale of the map. Will return 0
if it cannot be calculated. To change the scale see setViewpointCenter:scale:completion:
or setViewpoint: (AGSGeoView)
.
|
readnonatomicassigninherited |
Specifies whether the view is navigating, for example, when a pan or zoom animation is in progress or if a user is interacting with the view by dragging or pinching. The navigating changes can be monitored using Key-Value Observing (KVO).
|
readwritenonatomicassigninherited |
|
readnonatomicassigninherited |
The rotation angle (in degrees). The map is rotated in a counter-clockwise direction by the amount specified. To specify a new angle, see setViewpointRotation:completion:
or setViewpoint: (AGSGeoView)
.
|
readwritenonatomicstronginherited |
The selection properties that is applied to the geo view.
This property allows configuration of new selection highlighting functionality such as selection promotion and switchable selection halo.
Notes on per-layer selection coloring (supported in 2D only):
The deprecated per-layer selection coloring functionality is initially enabled.
If the AGSGeoView's
AGSSelectionProperties
are touched, per-layer selection coloring is then disabled for the lifetime of the view. (Here, 'touched' means replacing the view's AGSSelectionProperties
, or calling a setter property on the view's AGSSelectionProperties
).
Use of per-layer selection coloring is deprecated and may have a detrimental impact on rendering performance.
When per-layer coloring is enabled and more than one selection color is configured, selection halo will be disabled.
To enable selection halo or promotion, set the properties to YES
. Again, this will automatically disable per-layer selection coloring for the lifetime of the view.
|
readwritenonatomicstronginherited |
A sketch editor that allows users to interactively sketch geometries on the view.
|
readnonatomicstronginherited |
Spatial reference defining the coordinate system in which the view's content is displayed. The spatial reference changes can be monitored using Key-Value Observing (KVO).
|
readwritenonatomicstronginherited |
The current AGSTimeExtent
of the AGSGeoView
. The Time Extent of the AGSGeoView
defines how time-enabled data is displayed. Participating layers filter their data to only show data within the time extent set on the AGSGeoView
(see AGSTimeAware
for details). The range of the time extent includes the start and end values (a feature at 10/24/2016 would be included in a time extent defined as 10/24/2016 - 11/14/2016). Time filtering is not enabled until a non-nil time extent is set on the AGSGeoView
. When the time extent is nil
on the GeoView, no time filtering is applied and all content is rendered. The time extent changes can be monitored using Key-Value Observing (KVO).
AGSTimeAware::timeFilteringEnabled
property to see if time filtering is enabled on layers.
|
readwritenonatomicweakinherited |
Delegate to be notified when touch events occur on the map.The delegate class must adopt the AGSGeoViewTouchDelegate
protocol.
|
readnonatomicassigninherited |
The map's current resolution (map units per Point).
|
readwritenonatomiccopyinherited |
Block that gets invoked whenever the viewpoint changes.
|
readnonatomicstronginherited |
A polygon representing the map's visible area, taking into account any contentInset
property that has been specified to return only the unobscured portion of the map. The polygon always contains one ring with four vertices, each representing a corner of the map.
This is a polygon and not an envelope because the map may be rotated and each corner of the map may contain unique x-y coordinates, where as an envelope only permits two unique x coordinates (xmin, xmax) and two unique y coordinates (ymin, ymax). If the map has no rotation the polygon has the same coordinates as an envelope.
|
readnonatomicassigninherited |
Specifies whether the view's content wraps around the dateline.
|
readwritenonatomicassigninherited |
Indicates whether the map should wrap around the dateline. Defaults to AGSWrapAroundModeEnabledWhenSupported
.