Ionic Keyboard Scroll Issue - IOS

i am using com.ionic.keyboard plugin and facing scroll issue when input is focused and focus is navigated through keyboard accessory bar arrow keys.

The demo video shows that the keyboard scrolls up too much when the focus reached at dropdown or textbox.

The demo video shows that the back key on keyboard accessory bar focuses the input but does not scrolls to the focused input

i have the following code in .run method

$ionicPlatform.ready(function () {

        if (window.cordova && window.cordova.plugins && window.cordova.plugins.Keyboard) {
            cordova.plugins.Keyboard.hideKeyboardAccessoryBar(false);
            cordova.plugins.Keyboard.disableScroll(true);

        }
        
    });

Testing environment: iphone 6 (IOS 9)
cordova -v
5.2.0
ionic -v
1.6.4
ionic lib -v
1.0.1

We had the same issue for ios 9, we are using the following, till there is a fix!

<script>
    window.addEventListener('native.keyboardshow', keyboardShowHandler);

    function keyboardShowHandler(e) {
        setTimeout(function () {
            $('html, body').animate({ scrollTop: 0 }, 1000);
        }, 0);
    }
</script>
2 Likes

We’re experiencing the exact same issues on iOS9, ionic 1.6.4, cordova 5.3.3, ionic lib 1.0.1. No fix found yet though.

Were you able to fix this? Could you please share the solution?

Were you @mhartington able to find an solution for this issue??
In my mobile app I have added $ionicConfigProvider.scrolling.jsScrolling(false); for scrolling between the fields inside the form.
But, there’s another problem with the above fix. The ionic keyboard is calculating the screen size to fit in and creates a space between the ionickeyboard and the content.
My question is how do I get rid of the white space??
I debugged it and found out that the ion-content attribute height changes accordingly to the ionic keyboard.

Works like a charm; thanks

Weird, this code throws an error when I add it to my Ionic app (“unknown variable $”) but it still solves the problem!

Now guess what, if I leave away the "scrollto’ call from the keyboard handler it also solves the problem:

    function keyboardShowHandler(e) {
        setTimeout(function () {
        }, 0);
    }

Maybe even the “timeout” can be omitted, I didn’t test that.