Search code examples
iosobjective-ciphoneuitextfielduikeyboardtype

Decimal Pad keyboard not working properly in iOS 8


I'm developing an iOS 8 app in Xcode 6.0.1 and running it on my iPhone 5 (which has iOS 8.0.2 on it). In my app, I'm using a UITextField with the Decimal Pad keyboard type (I use the Xcode storyboard to set the keyboard type). Everything worked as expected when I was using iOS 7 and Xcode 5. However, after updating my software, I'm having this problem:

Every time I click on the UITextField, the Decimal Pad keyboard pops up normally (although the decimal button in the lower left corner is a half the size it should be), but then the UITextField won't animate upwards above the keyboard (like it used to) and the following message gets printed out on the console (however, my app does not crash):

Can't find keyplane that supports type 8 for keyboard iPhone-Portrait-DecimalPad; using 1425143906_Portrait_iPhone-Simple-Pad_Default

A number of "solutions" on the internet suggest going to iOS Simulator > Hardware > Keyboards and toggling an option in there. However, I'm not running my app on a simulator; I'm running it on my phone, so this solution does not work.

Thanks for the help!


Solution

  • Turns out, the issue with the UITextField animation was not due to the keyboard problem. I needed to set up constraints in Xcode's storyboard for the UITextField, make outlets for them in my view controller, and use the constraints to programmatically move the UITextField. I have that working now. However, the error message still pops up when the decimal pad comes up. I guess I can just ignore it until Apple fixes it.

    EDIT:
    I reported the bug to Apple.