<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: interactionOptions does not work... in ArcGIS Runtime SDK for iOS Questions</title>
    <link>https://community.esri.com/t5/arcgis-runtime-sdk-for-ios-questions/interactionoptions-does-not-work/m-p/696139#M6222</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks for the follow-up, &lt;A href="https://community.esri.com/migrated-users/58801"&gt;Worth Sparks&lt;/A&gt;.‌ This is helpful info.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Glad you've got a workaround. We'll take a look internally though.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 27 Feb 2019 20:07:29 GMT</pubDate>
    <dc:creator>Nicholas-Furness</dc:creator>
    <dc:date>2019-02-27T20:07:29Z</dc:date>
    <item>
      <title>interactionOptions does not work...</title>
      <link>https://community.esri.com/t5/arcgis-runtime-sdk-for-ios-questions/interactionoptions-does-not-work/m-p/696131#M6214</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;...if another gesture is already in progress. Or at least that is how the problem appears to me. My app is Draw GIS (similar to Draw Maps in the App Store). It allows the user to freehand draw in the web map. To do so in my code, I add a gesture recognizer to capture drawing strokes. When a stroke begins, I have to disable mapView.interactionOptions. This used to work in earlier versions but somewhere along the way this stopped working. To get around the problem, I disable/enable the mapView's pan, pinch, and rotate gesture recognizers directly.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;class MapView: AGSMapView {
&amp;nbsp;&amp;nbsp;&amp;nbsp; ...
&amp;nbsp;&amp;nbsp;&amp;nbsp; func interaction(isEnabled: Bool) {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; self.interactionOptions.isEnabled = isEnabled
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; guard let gestureRecognizers = gestureRecognizers else { return }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for gestureRecognizer in gestureRecognizers {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if let panGestureRecognizer = gestureRecognizer as? UIPanGestureRecognizer {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; panGestureRecognizer.isEnabled = isEnabled
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } else if let pinchGestureRecognizer = gestureRecognizer as? UIPinchGestureRecognizer {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pinchGestureRecognizer.isEnabled = isEnabled
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } else if let rotationGestureRecognizer = gestureRecognizer as? UIRotationGestureRecognizer {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; rotationGestureRecognizer.isEnabled = isEnabled
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp; ...
}&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I hope this helps someone.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 12 Dec 2021 16:48:56 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-runtime-sdk-for-ios-questions/interactionoptions-does-not-work/m-p/696131#M6214</guid>
      <dc:creator>WorthSparks</dc:creator>
      <dc:date>2021-12-12T16:48:56Z</dc:date>
    </item>
    <item>
      <title>Re: interactionOptions does not work...</title>
      <link>https://community.esri.com/t5/arcgis-runtime-sdk-for-ios-questions/interactionoptions-does-not-work/m-p/696132#M6215</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thank you for posting the code that works for you. &amp;nbsp;I'd be interested to learn more about what you are doing when the problem occurs. &amp;nbsp;Internally, when the user sets the "self.interactionOptions.isEnabled" option to "false" (on the MapView) we are doing what you are doing, which is setting all&amp;nbsp;the gestureRecognizers' isEnabled property to false.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;According to the UIGestureRecognizer's interface doc for "isEnabled": &amp;nbsp;"when changed to NO the gesture recognizer will be cancelled if it's currently recognizing a gesture", which *should* prevent the problem you are seeing.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If you could provide some more detail (or some sample code) that describes what's happening when you encounter the problem, I can see if there's anything we can do in the SDK.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks again,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Mark&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 12 Jan 2018 18:06:45 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-runtime-sdk-for-ios-questions/interactionoptions-does-not-work/m-p/696132#M6215</guid>
      <dc:creator>MarkDostal</dc:creator>
      <dc:date>2018-01-12T18:06:45Z</dc:date>
    </item>
    <item>
      <title>Re: interactionOptions does not work...</title>
      <link>https://community.esri.com/t5/arcgis-runtime-sdk-for-ios-questions/interactionoptions-does-not-work/m-p/696133#M6216</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Later, when I'm not so deep in other code, I might can make a sample program that demonstrates the problem. But for now, I'll just try to explain it better.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;I instantiate my StrokeGestureRecognizer, which subclasses UIGestureRecognizer, when the user raises the pencils to go into edit mode.&lt;/LI&gt;&lt;LI&gt;I add it to my MapView, which is a subclass of AGSMapView.&lt;/LI&gt;&lt;LI&gt;When the user begins a stroke, triggering strokeGestureRecognizer, the following action is called:&lt;/LI&gt;&lt;/OL&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&lt;CODE&gt;func &lt;SPAN class="token function"&gt;strokeUpdated&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;_ strokeRecognizer&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt; StrokeGestureRecognizer&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; let workingStroke&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt; WorkingStroke&lt;SPAN class="operator token"&gt;?&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="keyword token"&gt;if&lt;/SPAN&gt; strokeRecognizer&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;state &lt;SPAN class="operator token"&gt;!=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;cancelled &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; workingStroke &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; strokeRecognizer&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;workingStroke
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="keyword token"&gt;if&lt;/SPAN&gt; strokeRecognizer&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;state &lt;SPAN class="operator token"&gt;==&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;began &lt;SPAN class="operator token"&gt;||&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;strokeRecognizer&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;state &lt;SPAN class="operator token"&gt;==&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;ended &lt;SPAN class="operator token"&gt;&amp;amp;&amp;amp;&lt;/SPAN&gt; mapViewModel&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;activeWorkingStroke&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;value &lt;SPAN class="operator token"&gt;==&lt;/SPAN&gt; nil&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mapViewModel&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;activeWorkingStroke&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;value &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; workingStroke
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;else&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; workingStroke &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; nil
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mapViewModel&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;activeWorkingStroke&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;value &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; nil
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;

&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="keyword token"&gt;if&lt;/SPAN&gt; let workingStroke &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; workingStroke &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="keyword token"&gt;if&lt;/SPAN&gt; strokeRecognizer&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;state &lt;SPAN class="operator token"&gt;==&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;ended &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="keyword token"&gt;if&lt;/SPAN&gt; strokeRecognizer&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;isForApplePencil &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="comment token"&gt;// Make sure we get the final workingStroke update if needed.&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; workingStroke&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;receivedAllNeededUpdatesBlock &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;weak self&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt; in
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; self&lt;SPAN class="operator token"&gt;?&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;mapView&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;sketchView&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;setNeedsDisplay&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="keyword token"&gt;for&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt; workingStroke&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; workingStroke&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;clearUpdateInfo&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mapViewModel&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;takeActiveWorkingStroke&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;mapView&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt; mapView&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mapViewModel&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;activeWorkingStroke&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;value &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; nil
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;

&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="keyword token"&gt;if&lt;/SPAN&gt; let activeWorkingStroke &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; mapViewModel&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;activeWorkingStroke&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;value &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mapView&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;sketchView&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;setNeedsDisplay&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="keyword token"&gt;for&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt; activeWorkingStroke&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;
&lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;
‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;We want to disable map interaction only if the user is making a stroke.&amp;nbsp;On Line 7 above, activeWorkingStroke is instantiated so it can begin taking touch samples. In the view controller, an observer is triggered whenever activeWorkingStroke changes:&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&lt;CODE&gt;mapViewModel&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;activeWorkingStroke&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;asObservable&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;subscribe&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;onNext&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;weak self&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt; activeWorkingStroke in
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="keyword token"&gt;if&lt;/SPAN&gt; activeWorkingStroke &lt;SPAN class="operator token"&gt;==&lt;/SPAN&gt; nil &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; self&lt;SPAN class="operator token"&gt;?&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;mapView&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;interaction&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;isEnabled&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt; true&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;else&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; self&lt;SPAN class="operator token"&gt;?&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;mapView&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;interaction&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;isEnabled&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt; false&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;‍‍‍‍‍‍‍‍‍&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;The following is the version of my MapView member function that used to work:&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&lt;CODE&gt;func &lt;SPAN class="token function"&gt;interaction&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;isEnabled&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt; Bool&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; self&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;interactionOptions&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;isEnabled &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; isEnabled
&lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;
&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;But somewhere along the way, it stopped working. Xcode, iOS and AGS have each gone through some recent updates so It is hard to say exactly when this problem began. The following is how I fixed it:&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&lt;CODE&gt;func &lt;SPAN class="token function"&gt;interaction&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;isEnabled&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt; Bool&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; self&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;interactionOptions&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;isEnabled &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; isEnabled
&amp;nbsp;&amp;nbsp;&amp;nbsp; guard let gestureRecognizers &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; gestureRecognizers &lt;SPAN class="keyword token"&gt;else&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;return&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="keyword token"&gt;for&lt;/SPAN&gt; gestureRecognizer in gestureRecognizers &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="keyword token"&gt;if&lt;/SPAN&gt; let panGestureRecognizer &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; gestureRecognizer as&lt;SPAN class="operator token"&gt;?&lt;/SPAN&gt; UIPanGestureRecognizer &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; panGestureRecognizer&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;isEnabled &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; isEnabled
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;else&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;if&lt;/SPAN&gt; let pinchGestureRecognizer &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; gestureRecognizer as&lt;SPAN class="operator token"&gt;?&lt;/SPAN&gt; UIPinchGestureRecognizer &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pinchGestureRecognizer&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;isEnabled &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; isEnabled
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;else&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;if&lt;/SPAN&gt; let rotationGestureRecognizer &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; gestureRecognizer as&lt;SPAN class="operator token"&gt;?&lt;/SPAN&gt; UIRotationGestureRecognizer &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; rotationGestureRecognizer&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;isEnabled &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; isEnabled
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;
&lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;
&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;My gesture recognizer, strokeGestureRecognizer, is added to the mapView object, the same object where all the AGS gesture recognizers reside. Is it possible my gesture recognizer has tripped up some code somewhere that assumes all the gesture recognizers are Esri's? Or, perhaps it is something Apple did that is tripping both of us up. When I get a chance, I'll verify the bug is still there by retrying the old interaction(isEnabled:) function.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For now, I'm happy leaving my fix in place. I just wanted you all to know about the problem and, if nothing else, recheck your code to verify it still works as intended for more normal use cases.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks for the help.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 12 Dec 2021 05:18:28 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-runtime-sdk-for-ios-questions/interactionoptions-does-not-work/m-p/696133#M6216</guid>
      <dc:creator>WorthSparks</dc:creator>
      <dc:date>2021-12-12T05:18:28Z</dc:date>
    </item>
    <item>
      <title>Re: interactionOptions does not work...</title>
      <link>https://community.esri.com/t5/arcgis-runtime-sdk-for-ios-questions/interactionoptions-does-not-work/m-p/696134#M6217</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thank you for the detailed explanation, it helps. &amp;nbsp;I checked our code and we are holding onto the MapView gesture recognizers and then accessing them directly to enable/disable them, so there should be no issues with you adding your own recognizer. &amp;nbsp;I will write some tests here to try to reproduce your issue and verify things are OK in our code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Mark&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 16 Jan 2018 20:38:47 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-runtime-sdk-for-ios-questions/interactionoptions-does-not-work/m-p/696134#M6217</guid>
      <dc:creator>MarkDostal</dc:creator>
      <dc:date>2018-01-16T20:38:47Z</dc:date>
    </item>
    <item>
      <title>Re: interactionOptions does not work...</title>
      <link>https://community.esri.com/t5/arcgis-runtime-sdk-for-ios-questions/interactionoptions-does-not-work/m-p/696135#M6218</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I thought I had this fixed with my "in-the-weeds" fix I posted at the beginning of this thread. However, a new related problem is now happening. Even though I am setting interactionOptions.isEnabled = false and disabling all the gesture recognizers, something is hooking into some (not all) of my drag points and misinterpreting them as zoom.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;What's weird is, the misinterpretation is something I wouldn't know how to do in AGS, even if I wanted to. Stroking down zooms in, stroking up zooms out, and stroking left or right has no effect.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;What I need is simple. I need to disable AGSMapView user interaction completely during my stroke. That is, as soon as my StrokeGestureRecognizer is triggered, I need a way to disable all user interaction with the rest of the map view.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Have you been able to reproduce this problem?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks, Worth&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 13 Sep 2018 21:50:41 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-runtime-sdk-for-ios-questions/interactionoptions-does-not-work/m-p/696135#M6218</guid>
      <dc:creator>WorthSparks</dc:creator>
      <dc:date>2018-09-13T21:50:41Z</dc:date>
    </item>
    <item>
      <title>Re: interactionOptions does not work...</title>
      <link>https://community.esri.com/t5/arcgis-runtime-sdk-for-ios-questions/interactionoptions-does-not-work/m-p/696136#M6219</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks &lt;A href="https://community.esri.com/migrated-users/58801"&gt;Worth Sparks&lt;/A&gt;,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I think there might be something going on with additional gesture recognizers we set up which are only incidentally related to the properties exposed in &lt;STRONG&gt;AGSInteractionOptions&lt;/STRONG&gt;. We'll take a look into it.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In the meantime, you could work around this and extend your &lt;STRONG&gt;interaction(isEnabled)&lt;/STRONG&gt; function ‌to explicitly modify &lt;EM&gt;all&lt;/EM&gt; the gesture recognizers you find and which aren't yours (as opposed to the 3 you explicitly dig up above), restoring their state when your stroke gesture completes. Or you could overlay a transparent &lt;STRONG&gt;UIView&lt;/STRONG&gt; atop of&amp;nbsp;the &lt;STRONG&gt;AGSMapView&lt;/STRONG&gt; to capture your strokes with your custom gesture recognizer.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Cheers,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Nick.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 13 Feb 2019 17:56:30 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-runtime-sdk-for-ios-questions/interactionoptions-does-not-work/m-p/696136#M6219</guid>
      <dc:creator>Nicholas-Furness</dc:creator>
      <dc:date>2019-02-13T17:56:30Z</dc:date>
    </item>
    <item>
      <title>Re: interactionOptions does not work...</title>
      <link>https://community.esri.com/t5/arcgis-runtime-sdk-for-ios-questions/interactionoptions-does-not-work/m-p/696137#M6220</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi &lt;A href="https://community.esri.com/migrated-users/2201"&gt;Nicholas Furness&lt;/A&gt;,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I added the code to recursively iterate through all subviews and disable all gesture recognizers from the AGSMapView and down. Before, I was just getting four. Now that I am recursively iterating through all subviews, I am getting eight. So now I am disabling all gesture recognizers. And the problem still persists.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Near the top of this thread, replying to &lt;A href="https://community.esri.com/migrated-users/3740"&gt;Mark Dostal&lt;/A&gt; over a year ago, I said one day I might would make a stand-alone app to duplicate the problem. That day was yesterday. And I was able to reproduce it easily with just a couple Swift source files. I put it up in&amp;nbsp;&lt;A class="link-titled" href="https://github.com/Worth/AGSMapViewTouchTest" title="https://github.com/Worth/AGSMapViewTouchTest"&gt;GitHub - Worth/AGSMapViewTouchTest: Testing touch interaction with AGSMapView in ArcGIS Runtime SDK for iOS.&lt;/A&gt;&amp;nbsp;And I put a video of me recreating the problem here:&amp;nbsp;&lt;A class="link-titled" href="https://youtu.be/egnxTwN6jBA" title="https://youtu.be/egnxTwN6jBA"&gt;AGSMapViewTouchTest - YouTube&lt;/A&gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I will start now looking into blocking input to the mapView with an overlay view. Near the beginning of this project, back in 2017, the overlay view was my original plan but I struggled to have seamless interaction with both my gesture recognizers and Esri's gesture recognizers when they were in different views. But I have learned a lot since then. I will look again at this possible solution.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Worth&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 22 Feb 2019 23:35:38 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-runtime-sdk-for-ios-questions/interactionoptions-does-not-work/m-p/696137#M6220</guid>
      <dc:creator>WorthSparks</dc:creator>
      <dc:date>2019-02-22T23:35:38Z</dc:date>
    </item>
    <item>
      <title>Re: interactionOptions does not work...</title>
      <link>https://community.esri.com/t5/arcgis-runtime-sdk-for-ios-questions/interactionoptions-does-not-work/m-p/696138#M6221</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Weekend followup with problem apparently FIXED...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This AGSMapViewTouchTest app has made it much easier to chase this bug. Here is what I have learned.&lt;/P&gt;&lt;OL style="padding: 0px 0px 0px 30px;"&gt;&lt;LI style="margin: 0.2em 0px;"&gt;Switching the gesture recognizer to a separate transparent UIView on top of mapView does not fix this problem. It is almost like deep inside the ArcGIS Runtime code, something is using KVO to observe something in the Apple stack and then acting on it. Very weird.&lt;/LI&gt;&lt;LI style="margin: 0.2em 0px;"&gt;This problem only happens if mapView.interactionOptions.isEnabled is set to false AFTER a gesture has been recognized and begun.&lt;/LI&gt;&lt;LI style="margin: 0.2em 0px;"&gt;A simple fix is to use mapView's UIView.isUserInteractionEnabled instead. I'm embarrassed it took me until now to try this. Apparently this does not affect my gesture that is already in progress.&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So in my production app, Draw GIS, I have changed to using&amp;nbsp;&lt;SPAN&gt;UIView.isUserInteractionEnabled.&lt;/SPAN&gt;&amp;nbsp;Now it doesn't use AGSMapView.interactionOptions at all. In testing so far, it looks like the problem is gone. I am going to float this new version to my beta testers and see how it goes.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 23 Feb 2019 20:19:55 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-runtime-sdk-for-ios-questions/interactionoptions-does-not-work/m-p/696138#M6221</guid>
      <dc:creator>WorthSparks</dc:creator>
      <dc:date>2019-02-23T20:19:55Z</dc:date>
    </item>
    <item>
      <title>Re: interactionOptions does not work...</title>
      <link>https://community.esri.com/t5/arcgis-runtime-sdk-for-ios-questions/interactionoptions-does-not-work/m-p/696139#M6222</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks for the follow-up, &lt;A href="https://community.esri.com/migrated-users/58801"&gt;Worth Sparks&lt;/A&gt;.‌ This is helpful info.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Glad you've got a workaround. We'll take a look internally though.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 27 Feb 2019 20:07:29 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-runtime-sdk-for-ios-questions/interactionoptions-does-not-work/m-p/696139#M6222</guid>
      <dc:creator>Nicholas-Furness</dc:creator>
      <dc:date>2019-02-27T20:07:29Z</dc:date>
    </item>
    <item>
      <title>Re: interactionOptions does not work...</title>
      <link>https://community.esri.com/t5/arcgis-runtime-sdk-for-ios-questions/interactionoptions-does-not-work/m-p/696140#M6223</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hey &lt;A href="https://community.esri.com/migrated-users/58801"&gt;Worth Sparks&lt;/A&gt;.&amp;nbsp;We believe we have identified the problem and have a fix. Will be included in 100.6.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 28 May 2019 21:08:09 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-runtime-sdk-for-ios-questions/interactionoptions-does-not-work/m-p/696140#M6223</guid>
      <dc:creator>Nicholas-Furness</dc:creator>
      <dc:date>2019-05-28T21:08:09Z</dc:date>
    </item>
  </channel>
</rss>

