title: A UINavigationBar that hides using swipes leaves a region that intercepts taps to reveal it?
body: <p>I've configured my UINavigationController to auto-hide it's UINavigationBar on swipes. Swiping up and down hides/reveals the bar just fine. However, a tap (touch) in the region of the screen previously occupied by the nav bar <em>also</em> triggers a nav bar reveal, and this is causing me problems. My view places a button near top of the screen. When the entire app expands up into the space left-over by the auto-hiding UINavigationBar, <strong>taps on my button trigger the nav bar reveal</strong> which is very annoying since I want swipes to reveal the bar not taps. I assume this is happening because the button has moved up into the space where the nav bar was. </p>
  
  <p>Is there any way to prevent the bar reveal from happening when my button is tapped? I was wondering if I should override hitTest in UINavigationController to try to stop the event from propagating?</p>
  
  <p>Here's how I'm hiding the nav bar:</p>
  
  <pre><code>let navVC = self.navigationController
  navVC!.hidesBarsOnSwipe = true
  navVC!.hidesBarsOnTap = false
  </code></pre>
  
  <p>If I use RxSwift to subscribe to control events for the UINavigationController I see events like this:</p>
  
  <pre><code>received &lt;_UIBarTapGestureRecognizer: 0x7b6dae30; state = Ended;
      cancelsTouchesInView = NO; view = &lt;UILayoutContainerView 0x7b942bc0&gt;; 
      targets= &lt;("(action=_gestureRecognizedToggleVisibility:, 
          target=&lt;UINavigationController 0x7da79400&gt;)", "(action=eventHandler:, 
          target=&lt;RxCocoa.GestureTarget 0x7b6e1f90&gt;)")&gt;&gt;
      tapCategory=WhereNavigationBarWas
  </code></pre>