2016-09-21 11 views
1

Der gewünschte Effekt für meine Android-Anwendung ist ein Webview mit einem Eingabefeld und Inhalt. Wenn der Benutzer auf die Tastatur klickt, schiebt die Tastatur das Eingabefeld nach oben, ändert jedoch nicht die Größe des Hauptinhalts und legt nur eine Überlagerung darüber an, wie im folgenden Diagramm zu sehen ist.Android Webview Tastatur Abdeckung Eingabe

enter image description here

Das Problem, das ich erlebt habe, ist, dass die Tastatur in das Eingabefeld abdeckt und es nicht drücken.

Dies ist derzeit eine Cordova Android-Anwendung. In dem Manifest habe ich

<activity android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale" android:label="@string/activity_name" android:launchMode="singleInstance" android:name="GigJam" android:theme="@android:style/Theme.DeviceDefault.NoActionBar" android:windowSoftInputMode="adjustPan"> 

Auch in der config.xml configued:

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

I android verwendet: windowSoftInputMode = "adjustPan" den Bildschirm von Redimensionierung zu verhindern, das ist, was ich seit ich will Ich möchte nicht, dass der Inhalt zerquetscht wird. Ich habe auch versucht, die CSS für das Eingabefeld zu konfigurieren, um fest und absolut (im Grunde an der Unterseite des Webview gebunden.

Von meinem Verständnis, wenn die Tastatur von einer Bearbeitung im Eingabefeld erscheint, dass es würde die Box als auch Push-up, weil das Eingabefeld auf die Webansicht gezwungen wird, die auch nach oben gedrückt wird.

Jede Beratung schätzen, Danke, D

+0

Haben Sie das gelöst? Ich stehe vor dem gleichen Problem, normalerweise "adjustPan" drückt in Android die Eingaben an die Spitze der Tastatur, so dass sie immer sichtbar sind, und wie Sie gesagt haben, quetscht der Inhalt nicht. Aber in meiner Phonegap App wird die Eingabe nicht hochgedrückt. – Taurus

+0

Oh Mist, ich habe nicht bemerkt, dass die akzeptierte Antwort von dir hinzugefügt wurde. – Taurus

Antwort

0

Android hat eine Tastatur Ereignis, das ich höre Wenn der show/hide Trigger ist, ergreife ich die aktive Eingabekomponente und transformiere die Box in der Y-Achse um die Größe der Tastaturhöhe, die man von der e nehmen kann im Zuhörer entlüften. Ich transformiere zurück, wenn die Show ausgelöst wird.

Hinweis: Bedarf die Größe für den Android deaktiviert sein.. WindowSoftInputMode und auf "adjustPan"

+0

Welches Ereignis ist das? Ich könnte ein "Fokus" -Ereignis machen, aber ich nehme an, dass dies das Ganze auf IOS durcheinander bringen würde, wo das Verhalten standardmäßig korrekt ist. – Taurus

+0

Bitte genaue Lösung angeben –

0

Verwendung dieser Linie getActivity() getWindow() setSoftInputMode (WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);

Verwandte Themen