4

I've upgraded Cordova to 4.2.0 and my iOS project has been upgraded to 3.7.0. Everything seems to work fine except the iOS keyboard is now showing the form accessory bar in iOS 8 (next previous arrows with done button).

In config.xml, HideKeyboardFormAccessoryBar is set to true which is still working as expected for the app on iOS 7. Now on iOS 8, the bar in not hidden.

<preference name="HideKeyboardFormAccessoryBar" value="true" />

I've also set it within the js:

Keyboard.hideFormAccessoryBar(true);

After further research, I've learned that the Keyboard plugin is no longer being maintained. Is there another way to hide this form accessory bar on iOS 8? It's not a big problem but makes it obvious that the app is non-native and I'd like to avoid that.

rfmerrill
  • 93
  • 1
  • 12

1 Answers1

3

I was able to solve this issue by using a completely different keyboard plugin for Cordova, the Ionic Keyboard plugin. https://github.com/driftyco/ionic-plugins-keyboard

You can install it with the following:

cordova plugin add com.ionic.keyboard

To hide the keyboard form accessory bar you execute the following:

cordova.plugins.Keyboard.hideKeyboardAccessoryBar(true);

There is a slight flicker as the the accessory bar is hidden when the keyboard appears for the first time but it works fine otherwise on both iOS 7 and iOS 8. I've tested on iPhones and iPads. I hope this helps someone. If anyone knows how to avoid that initial flicker, please share.

rfmerrill
  • 93
  • 1
  • 12