UIKeyboardWillShow notification not sent when UITextField becomes first responder while a keyboard is already visible
| Originator: | kasper.muncken | ||
| Number: | rdar://34432484 | Date Originated: | 14/9/2017 |
| Status: | Open | Resolved: | |
| Product: | iOS 11 GM | Product Version: | iOS 11 GM |
| Classification: | Serious Bug | Reproducible: | Always |
Summary:
In iOS 10 (and previous versions) the UIKeyboardWill{Show|Hide} notifications are sent by the system whenever a UITextField (or other responder) becomes/resigns first responder. That allows the layout to adopt to a screen with/without a keyboard covering part of the contents. This ability is crucial when making flexible and dynamic layouts.
In iOS 11 these notifications are no longer sent if a keyboard is already visible, which makes it impossible to adopt to the changing screen infrastructure.
Steps to Reproduce:
- Run the project suffixed with _iOS10 in Xcode 8.3.3 (8E3004b)
- Notice how will{Show|Hide} notifications are sent by the system every time a textfield becomes/resigns first responder (regardless of whether the keyboard is already visible or not)
- Run the other project in Xcode 9 GM (9A235)
- Notice how will{Show|Hide} notifications are only sent by the system the first time a textfield becomes/resigns first responder.
Expected Results:
UIKeyboardWillShow notification will be sent every time a new textfield becomes first responder. Vice versa for WillHide.
Actual Results:
Only one UIKeyboardWill{Show|Show} notification is sent.
Version/Build:
Xcode 9 GM (9A235)
Xcode 8.3.3 (8E3004b)
Configuration:
-
Comments
Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!