I'm using the latest ionic and have a simple select tag.
<select class="assertive bold" ng-change="changeQuantity({cartItem: part})" ng-model="part.quantity" ng-options="n for n in [] | range:1:101"></select>
When I run the code with ionic emulate ios
Why is there no done button for the select? Shouldn't that be default? How do I fix this to display a done button?
I have fought this issue for over four hours. The recommended answer, hideKeyboardAccessoryBar(false) failed repeatedly, with every possible combination of cordova.Keyboard, windows.Keyboard, $window.cordova.Keyboard, yes, inside deviceready, etc. etc. Resolved all conflicts between this and the older plugin.
No joy.
Solution: REMOVE THIS PLUGIN. Guess what. You get your Done button back. Run the following command:
ionic cordova plugin remove cordova-plugin-ionic-keyboard
Solution: Remove this plugin!
sudo cordova plugin remove ionic-plugin-keyboard.
This is what worked for me since I needed the accessory bar only in one instance, the accepted answer is old, and I am using cordova-plugin-keyboard instead. I used it with an onOpen handler.
What worked for me is doing:
The new plugin was exposed as global Keyboard, rather than cordova.plugins.Keyboard, and then the hideFormAccessoryBar is for form elements, rather than just for keyboard typing.
Although this is a late answer, I'm sure more people will end up here while searching for a solution to this issue.
By default in your app.js in .run() the hideKeyboardAccessoryBar is set to true, so just find
and change it to