ArcGIS Runtime SDK for iOS: <AGSGeoViewTouchDelegate> Protocol Reference
ArcGIS Runtime SDK for iOS  100.5
<AGSGeoViewTouchDelegate> Protocol Reference

Description

A protocol which must be adopted by a class wishing to informed about touch events on AGSMapView or AGSSceneView. An instance of the class must then be set as AGSGeoView::touchDelegate .

All of the methods of this protocol are optional.

{AGSGeoView.h, ArcGIS}

Since
100

Instance Methods

(void) - geoView:didChangeForceTouchAtScreenPoint:mapPoint:force:
 
(void) - geoView:didDoubleTapAtScreenPoint:mapPoint:completion:
 
(void) - geoView:didEndForceTouchAtScreenPoint:mapPoint:force:
 
(void) - geoView:didEndLongPressAtScreenPoint:mapPoint:
 
(void) - geoView:didForceTouchAtScreenPoint:mapPoint:force:
 
(void) - geoView:didLongPressAtScreenPoint:mapPoint:
 
(void) - geoView:didMoveLongPressToScreenPoint:mapPoint:
 
(void) - geoView:didTapAtScreenPoint:mapPoint:
 
(void) - geoView:didTouchDownAtScreenPoint:mapPoint:completion:
 
(void) - geoView:didTouchDragToScreenPoint:mapPoint:
 
(void) - geoView:didTouchUpAtScreenPoint:mapPoint:
 
(void) - geoViewDidCancelForceTouch:
 
(void) - geoViewDidCancelLongPress:
 
(void) - geoViewDidCancelTouchDrag:
 

Method Documentation

§ geoView:didChangeForceTouchAtScreenPoint:mapPoint:force:()

- (void) geoView: (AGSGeoView *)  geoView
didChangeForceTouchAtScreenPoint: (CGPoint)  screenPoint
mapPoint: (AGSPoint *)  mapPoint
force: (double)  force 
optional

Tells the delegate that the user moved their finger during a force touch interaction.

Parameters
geoViewon which the user performed the interaction.
screenPointLocation in screen coordinates.
mapPointLocation in map coordinates. When using an AGSSceneView, the location will have a z-value corresponding to the intersection point on the scene's baseSurface.
forceForce with which the user touched the point. Force is a normalized value that ranges from 0 which represents the force of an average touch, to 1.0 which is the value of a maximum force touch.
Since
100
See also
- screenToLocation:completion: (AGSSceneViewCommon) to get a location that intersects with any features/graphics on or above the baseSurface.

§ geoView:didDoubleTapAtScreenPoint:mapPoint:completion:()

- (void) geoView: (AGSGeoView *)  geoView
didDoubleTapAtScreenPoint: (CGPoint)  screenPoint
mapPoint: (AGSPoint *)  mapPoint
completion: (void(^)(BOOL willHandleDoubleTap))  completion 
optional

Tells the delegate that the user double-tapped at the specified location. If the delegate would like to consume this event, it needs to invoke the provided completion block with true which will then prevent the geoview from handling the gesture (for eg, it won't zoom the map on double-tap).

Parameters
geoViewon which the user performed the interaction.
screenPointLocation in screen coordinates.
mapPointLocation in map coordinates. When using an AGSSceneView, the location will have a z-value corresponding to the intersection point on the scene's baseSurface.
completionblock that the delegate needs to invoke with a boolean indicating whether or not they want to consume this event. If they consume this event, the geoview will disregard the entire gesture that begins with this event. It will then be the delgate's responsibility to appropriately respond to the gesture.
Since
100
See also
- screenToLocation:completion: (AGSSceneViewCommon) to get a location that intersects with any features/graphics on or above the baseSurface.

§ geoView:didEndForceTouchAtScreenPoint:mapPoint:force:()

- (void) geoView: (AGSGeoView *)  geoView
didEndForceTouchAtScreenPoint: (CGPoint)  screenPoint
mapPoint: (AGSPoint *)  mapPoint
force: (double)  force 
optional

Tells the delegate that a force touch interaction ended.

Parameters
geoViewon which the user performed the interaction.
screenPointLocation in screen coordinates.
mapPointLocation in map coordinates. When using an AGSSceneView, the location will have a z-value corresponding to the intersection point on the scene's baseSurface.
forceForce with which the user touched the point. Force is a normalized value that ranges from 0 which represents the force of an average touch, to 1.0 which is the value of a maximum force touch.
Since
100
See also
- screenToLocation:completion: (AGSSceneViewCommon) to get a location that intersects with any features/graphics on or above the baseSurface.

§ geoView:didEndLongPressAtScreenPoint:mapPoint:()

- (void) geoView: (AGSGeoView *)  geoView
didEndLongPressAtScreenPoint: (CGPoint)  screenPoint
mapPoint: (AGSPoint *)  mapPoint 
optional

Tells the delegate that the long press interaction has ended.

Parameters
geoViewon which the user performed the interaction.
screenPointScreen coordinates of where the user ended the tap and hold.
mapPointMap coordinates of where the user ended the tap and hold. When using an AGSSceneView, the location will have a z-value corresponding to the intersection point on the scene's baseSurface.
Since
100
See also
- screenToLocation:completion: (AGSSceneViewCommon) to get a location that intersects with any features/graphics on or above the baseSurface.

§ geoView:didForceTouchAtScreenPoint:mapPoint:force:()

- (void) geoView: (AGSGeoView *)  geoView
didForceTouchAtScreenPoint: (CGPoint)  screenPoint
mapPoint: (AGSPoint *)  mapPoint
force: (double)  force 
optional

Tells the delegate that the user force touched at the specified location. The force touch gesture is recognized when a touch greater than average force is made for more than 300 miliseconds. The average force of a touch is defined by the iOS operating system as a raw force value of 1.0. The force reported by the gesture recognizer is a normalized value that ranges from the average force of a touch to the maximum force of a touch. The force value's range is 0 to 1.0.

Parameters
geoViewon which the user performed the interaction.
screenPointLocation in screen coordinates.
mapPointLocation in map coordinates. When using an AGSSceneView, the location will have a z-value corresponding to the intersection point on the scene's baseSurface.
forceForce with which the user touched the point. Force is a normalized value that ranges from 0 which represents the force of an average touch, to 1.0 which is the value of a maximum force touch.
Since
100
See also
- screenToLocation:completion: (AGSSceneViewCommon) to get a location that intersects with any features/graphics on or above the baseSurface.

§ geoView:didLongPressAtScreenPoint:mapPoint:()

- (void) geoView: (AGSGeoView *)  geoView
didLongPressAtScreenPoint: (CGPoint)  screenPoint
mapPoint: (AGSPoint *)  mapPoint 
optional

Tells the delegate that the user long-pressed at the specified location.

Parameters
geoViewon which the user performed the interaction.
screenPointLocation in screen coordinates.
mapPointLocation in map coordinates. When using an AGSSceneView, the location will have a z-value corresponding to the intersection point on the scene's baseSurface.
Since
100
See also
- screenToLocation:completion: (AGSSceneViewCommon) to get a location that intersects with any features/graphics on or above the baseSurface.

§ geoView:didMoveLongPressToScreenPoint:mapPoint:()

- (void) geoView: (AGSGeoView *)  geoView
didMoveLongPressToScreenPoint: (CGPoint)  screenPoint
mapPoint: (AGSPoint *)  mapPoint 
optional

Tells the delegate that the user moved their finger during a long press interaction.

Parameters
geoViewon which the user performed the interaction.
screenPointLocation in screen coordinates.
mapPointLocation in map coordinates. When using an AGSSceneView, the location will have a z-value corresponding to the intersection point on the scene's baseSurface.
Since
100
See also
- screenToLocation:completion: (AGSSceneViewCommon) to get a location that intersects with any features/graphics on or above the baseSurface.

§ geoView:didTapAtScreenPoint:mapPoint:()

- (void) geoView: (AGSGeoView *)  geoView
didTapAtScreenPoint: (CGPoint)  screenPoint
mapPoint: (AGSPoint *)  mapPoint 
optional

Tells the delegate that the user single-tapped at the specified location.

Parameters
geoViewon which the user performed the interaction.
screenPointLocation where the user tapped in screen coordinates.
mapPointLocation where the user tapped in map coordinates. When using an AGSSceneView, the location will have a z-value corresponding to the intersection point on the scene's baseSurface.
Since
100
See also
- screenToLocation:completion: (AGSSceneViewCommon) to get a location that intersects with any features/graphics on or above the baseSurface.

§ geoView:didTouchDownAtScreenPoint:mapPoint:completion:()

- (void) geoView: (AGSGeoView *)  geoView
didTouchDownAtScreenPoint: (CGPoint)  screenPoint
mapPoint: (AGSPoint *)  mapPoint
completion: (void(^)(BOOL willHandleDrag))  completion 
optional

Tells the delegate that the user put a finger down at the specified location. This event is the precursor of a tap or a drag gesture. If the delegate would like to consume this event, it needs to invoke the provided completion block with true which will then prevent the geoview from handling the gesture (for e.g, it won't pan the map when the finger is dragged). It will then be the delgate's responsibility to appropriately respond to the gesture. This is useful, for instance, if you want to drag graphics on the map for which you would invoke identify on the graphics overlay and call the completion block with true if any graphic was returned.

Note
The completion block should be invoked as quickly as possible to keep the app responsive to user interaction
Parameters
geoViewon which the user performed the interaction.
screenPointLocation where the user put the finger down
mapPointLocation where the user put the finger down. When using an AGSSceneView, the location will have a z-value corresponding to the intersection point on the scene's baseSurface.
completionblock that the delegate needs to invoke with a boolean indicating whether or not they want to consume this event. If they consume this event, the geoview will disregard the entire gesture that begins with this event. It will then be the delgate's responsibility to appropriately respond to the gesture.
Since
100
See also
- screenToLocation:completion: (AGSSceneViewCommon) to get a location that intersects with any features/graphics on or above the baseSurface.

§ geoView:didTouchDragToScreenPoint:mapPoint:()

- (void) geoView: (AGSGeoView *)  geoView
didTouchDragToScreenPoint: (CGPoint)  screenPoint
mapPoint: (AGSPoint *)  mapPoint 
optional

Tells the delegate that the user dragged their finger to specified location. This event is only raised if the delegate has indicated that they want to consume the immediately prior geoView:didTouchDownAtScreenPoint:mapPoint:completion: event by passing YES to the completion block parameter.

Parameters
geoViewon which the user performed the interaction.
screenPointLocation where the user dragged their finger to
mapPointLocation where the user dragged their finger to. When using an AGSSceneView, the location will have a z-value corresponding to the intersection point on the scene's baseSurface.
Since
100
See also
- screenToLocation:completion: (AGSSceneViewCommon) to get a location that intersects with any features/graphics on or above the baseSurface.

§ geoView:didTouchUpAtScreenPoint:mapPoint:()

- (void) geoView: (AGSGeoView *)  geoView
didTouchUpAtScreenPoint: (CGPoint)  screenPoint
mapPoint: (AGSPoint *)  mapPoint 
optional

Tells the delegate that the user lifted their finger from the screen. This event is only raised if the delegate has indicated that they want to consume the prior geoView:didTouchDownAtScreenPoint:mapPoint:completion: event.

Parameters
geoViewon which the user performed the interaction.
screenPointLocation where the user lifted their finger
mapPointLocation where the user lifted their finger. When using an AGSSceneView, the location will have a z-value corresponding to the intersection point on the scene's baseSurface.
Since
100
See also
- screenToLocation:completion: (AGSSceneViewCommon) to get a location that intersects with any features/graphics on or above the baseSurface.

§ geoViewDidCancelForceTouch:()

- (void) geoViewDidCancelForceTouch: (AGSGeoView *)  geoView
optional

Tells the delegate that a force touch interaction was canceled.

Parameters
geoViewon which the user performed the interaction.
Since
100

§ geoViewDidCancelLongPress:()

- (void) geoViewDidCancelLongPress: (AGSGeoView *)  geoView
optional

Tells the delegate that a long press interaction was canceled. This may happen, for instance, when you have the magnifier visible and attempt to take a screenshot using the home/lock button combination.

Parameters
geoViewon which the user performed the interaction.
Since
100
See also
- screenToLocation:completion: (AGSSceneViewCommon) to get a location that intersects with any features/graphics on or above the baseSurface.

§ geoViewDidCancelTouchDrag:()

- (void) geoViewDidCancelTouchDrag: (AGSGeoView *)  geoView
optional

Tells the delegate the drag action was cancelled. This event is only raised if the delegate has indicated that they want to consume the prior geoView:didTouchDownAtScreenPoint:mapPoint:completion: event.

Since
100
See also
- screenToLocation:completion: (AGSSceneViewCommon) to get a location that intersects with any features/graphics on or above the baseSurface.