title: Automatically scroll UITableView to show row **below** the row being edited
body: <p>I have <code>UITableView</code> in a ViewController (not a <code>UITableViewController</code>) with <code>UITextFields</code> in each row. I would like the TableView to automatically scroll so that the row <strong>below</strong> the row being edited is always displayed. This allows the user to tap the next row to edit it. The built in iOS Reminders app has this behaviour.</p>
  
  <p>I have followed <a href="https://developer.apple.com/library/ios/documentation/StringsTextFonts/Conceptual/TextAndWebiPhoneOS/KeyboardManagement/KeyboardManagement.html#//apple_ref/doc/uid/TP40009542-CH5-SW3" rel="nofollow">Apple's advice on managing the keyboard</a> but that only scrolls to show the row you are editing just above the keyboard, <strong>not the row below it</strong>.</p>
  
  <p>I have tried adjusting the frame in <code>scrollRectToVisible:</code> but it makes no difference. In fact commenting out that line of code seems to have no effect at all.</p>
  
  <p>It seems that the <code>UITableView</code> will always try to scroll to show the <code>UITextfield</code> being edited just above the keyboard, and I can't find a way of adjusting or overriding this behaviour so that it shows the row below it also.</p>
  
  <p><strong>Update:</strong></p>
  
  <p>I've found that the automatic scrolling behaviour can be prevented by overriding the private <code>scrollTextFieldToVisible</code> method of <code>UITextField</code>.
  However, the automatic scrolling code provided by Apple in the linked documentation still does not work.</p>