Dark keyboard does not display properly when keyboard is first shown with an inputView

Originator:migrantp
Number:rdar://14893795 Date Originated:03-Sep-2013
Status:Closed Resolved:Yes
Product:iOS SDK Product Version:iOS 7
Classification:UI/Usability Reproducible:Always
 
Summary:
Configure a UITextView with a dark keyboard. Assign it an inputView. When the UITextView becomes first responder, the inputView shows up. However, if you then set the inputView to nil and resign/become first responder again, the light keyboard is shown.

This bug was discovered by trying to build a mechanism to switch between a custom keyboard and the standard keyboard.

Steps to Reproduce:
1. Configure a UITextView with a dark keyboard.
2. Set the text view's inputView to a UIView instance.
3. Call becomeFirstResponder on the text view.
4. Observe the keyboard
5. Call resignFirstResponder on the text view.
6. Set the text view's inputView to nil.
7. Call becomeFirstResponder on the text view.
8. Observe the keyboard

Expected Results:
In step 4 we should see our custom UIView instance.
In step 8 we should see a dark keyboard.

Actual Results:
In step 4 we do see our custom UIView instance.
In step 8 we actually see a light keyboard, not a dark one.

Version:
iOS 7 beta 6

Notes:
While the errant light keyboard is displayed, backgrounding the app with the Home button and then foregrounding the app will cause the dark keyboard to appear. The dark keyboard then works properly for that text view. This happens both on device and the simulator.

A sample project exhibiting the problem is attached. You can use the segmented control to cause the problem.

Configuration:
This problem occurs on:
- iPad 2
- iPhone 4
- iPad simulator
- iPad Retina simulator

This problem does not occur on:
- iPhone 3.5" simulator
- iPhone 4" simulator

Comments

Fixed in iOS 7.1 beta 4.


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!