Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

page content don't scroll when keyboard shows phonegap

Tags:

html

css

cordova

In my application the registration I have an issue when I try to type in field the keyboard hides the other fields those are the screenshots enter image description here

enter image description here

how can we fix that I want the page to be scrollable, for info I'm using the phonegap build this needs for sure changes into the config.xml I don't know really how to do it.

like image 754
aymen taarit Avatar asked Apr 21 '13 23:04

aymen taarit


2 Answers

I had this problem as well - the underlying problem it seems is you can't edit the androidManifest file with Phonegap Build - all you can do is edit the config.xml file which really only allows you to change a limited subset of settings. What I would like (and a lot of others have been screaming for a long time fo) is to be able to change the windowSoftInputMode.

I did however find a solution to my problem - which was the keyboard appearing over fields at the bottom of the screen which I think is the same problem you're having. For me - I'm using the latest phonegap 2.7.0 (but was able to reproduce the same behaviour and solution by specifying phonegap 2.5.0 in the config.xml file)

The solution I found was to change this setting in config.xml

<preference name="fullscreen" value="false" />

This does mean you get the 'status bar' at the top of the screen.. which is no biggie for me (in fact I think it's better to have it there.. at least for my app) - with that setting set to "false" instead of "true" - the page now scrolls up to reveal the field you're editing when the keyboard opens. (to be more precise, I believe the viewport changes rather than scroll up)

Hope that helps and solves your problem.. took me hours of searching and fiddles to get it to work (if I didn't find that I would have had to abandon phonegap build)

joy! Dylan

like image 139
Dylan Hamilton-Foster Avatar answered Nov 07 '22 01:11

Dylan Hamilton-Foster


Try something like this in config.xml:

<preference name="fullscreen" value="false" />
<preference name="android-windowSoftInputMode" value="stateVisible" />
like image 8
Manuel Avatar answered Nov 07 '22 01:11

Manuel