I've found the best solution is using UIView.setAnimationsEnabled(_ enabled: Bool)
.
Swift 3
UIView.setAnimationsEnabled(false)
textField.becomeFirstResponder()
// or textField.resignFirstResponder() if you want to dismiss the keyboard
UIView.setAnimationsEnabled(true)