Question

I have some simple code that moves the 'firstResponder' between UITextFields by calling 'becomeFirstResponder' on each field in turn.

In iOS 5, the keyboard is shown as constantly, until the final textfield where resignFirstResponder is shown.

However, in iOS 6, the keyboard performs the dismiss and reappear animation each time the first responder is moved. At no point do I call resignFirstResponder when calling becomeFirstResponder to move the responder (or in any of the associated methods) - it just seems to be new default behaviour in iOS 6.

This is distracting, and unwanted.

I've looked through the Apple documentation, and can't find any mention of a change to how the keyboard animation is managed.

Can anyone refer me to documentation of these changes? Thanks.

Was it helpful?

Solution

Found the problem.

My code was also calling,

[self.tableView reloadData];

...when calling becomeFirstResponder.

Therefore, the keyboard was being dismissed while the redraw occurred.

This certainly seems to cause different keyboard behaviour between iOS 5 & 6. Though the behaviour in 6 doesn't seem wholly unreasonable, considering.

Thanks to @Fogmeister for the help.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top