title: UITableView scroll to a specific point when scrollViewDidEndDragging
body: <p>I have a <code>UITableView</code> which is scrollable. When the user scrolls the <code>UITableView</code> a certain amount and then releases their finger, instead of scrolling back to the top, I want it to scroll 50 points from the top, effectively leaving a gap of 50 points between the top of the screen and the top most cell.</p>
  
  <p>At the moment I have implemented <code>scrollViewDidEndDragging</code>, but I don't know how to set where the view will scroll back to.</p>
  
  <p>I've tried the following, but it doesn't work as desired.</p>
  
  <pre><code>- (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate
  {
      // If scrolled over 100 points
      if(-100 &gt; (double)self.tableView.contentOffset.y) {
          [self.tableView setContentOffset:CGPointMake(0, -50) animated:YES];
      }
  }
  </code></pre>
  
  <p>The code above causes a weird flicker, like the animations are both running concurrently, but I'm unsure.</p>
  
  <p>Any help would be appreciated.</p>
  
  <h2>UPDATE with more information</h2>
  
  <p>I'm implementing "Pull down to refresh" functionality based upon this post:
  <a href="https://stackoverflow.com/a/6392145/120615">https://stackoverflow.com/a/6392145/120615</a></p>
  
  <p>I've added an extra <code>UIView</code> to the top of the <code>UITableView</code> and when you scroll the <code>UITableView</code>, the <code>UIView</code> moves down into view. When you release your finger from the screen, the <code>UITableView</code> scrolls back to the top hiding the new <code>UIView</code> I've added.</p>
  
  <p>What I would <strong>like</strong> to happen is that when you release your finger the <code>UITableView</code> scrolls back to top but stops 100 points from the top (so I can show an activity indicator to the user) and <em>then</em> after 2/3 seconds scrolls completely to the top.</p>