2013-07-13 12 views
18

Soft-Eingabe-Modus ist "SOFT_INPUT_ADJUST_PAN", und wenn Tastatur angezeigt wird, bewegt sich EditText nach oben, um sichtbar zu bleiben, aber die Tastatur und TXT Boden sind immer zusammengeklebt wie auf Screenshot gesehen, ich möchte etwas Abstand zwischen ihnen, ist es möglich?Platz zwischen Tastatur und EditText in Android

Auch der Eingabemodus muss wie "SOFT_INPUT_ADJUST_PAN" bleiben.

Leider mein Englisch, Vielen Dank im Voraus bilden ...

Screenshot:

+0

Warum besteht die Verwendung von "adjustPan"? Mit "adjustResize" wird dieses Problem nicht auftreten. – arjoan

+0

Wenn man "adjustResize" benutzt, ist das größte Problem, dass sich die Navigationsleiste am oberen Rand der Tastatur befindet. – altosh

Antwort

2

Kann diese Ihnen helfen:

Wenn diese Zeile im Code geschrieben wird, dann ist es entfernen:

getWindow().setFlags(WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS, WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS); 

ODER:

Sie sollten Ihre layout_width und layout_heights nicht mit expliziten Pixelwerten einstellen. Verwenden Sie stattdessen wrap_parent oder fill_parent entsprechend.

OR:

Wenn Sie Ihren minSdkVersion-3 gesetzt haben, dann ändern Sie ihn auf minSdkVersion=4

Edit:

Set android:windowSoftInputMode auf die Aktivität auf "adjustPan"

OR :

diesen Code in Ihrer Haupttätigkeit hinzufügen in setOnTouchListener() Ihr EditText:

this.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_UNSPECIFIED); 
+0

Danke für die Antwort, aber keiner von ihnen arbeitete für mich. – altosh

+0

Buddy sehen den bearbeiteten Code es könnte Ihnen helfen .. –

+1

Vielen Dank, Eingabemodus muss SOFT_INPUT_ADJUST_PAN bleiben. Wenn die Tastatur angezeigt wird, bleibt sie an den Editiertexten haften (zum Beispiel Edittext am unteren Bildschirmrand). Es ist in Ordnung, aber ich möchte etwas Platz zwischen Editiertext und Tastatur. – altosh

1

Warum versuchen Sie nicht das?

Ich weiß, dass Sie Pfanne einstellen möchten, aber dies würde Ihr Problem auch lösen.

Da Sie wirklich mit adjustPan bleiben möchten, können Sie vielleicht versuchen, das XML-Layout ein wenig neu zu gestalten.

+0

Das ist Arbeit für mich. – boiledwater

+0

kein Leerzeichen zwischen Editiertext und Softkeyboard. kann es nicht herausfinden –

0

Nur wundernd, ist Ihre App Vollbild? hat es die Statusleiste? Wenn es versucht wird, den Vollbildmodus zu deaktivieren und zu versuchen, zu sehen, ob das dein Problem löst. Ich erinnere mich, dass es vor einiger Zeit einen Fehler gab.

+0

es hat Statusleiste. – altosh

3

Ich bewarb mich über Methoden, die für mich gearbeitet Set android war: windowSoftInputMode auf die Aktivität auf „adjustPan“ als ich die Polsterung an den EditText mit der Schwerkraft unteren und es funktioniert wie Charme hinzugefügt. Danke,

+1

Padding ist was funktioniert, denn im Gegensatz zu Margen wird es von der Fensterverwaltung als intern in der Ansicht gesehen. Beispiel: editText.setPadding (0, 0, 0, 40) bewirkt, dass Ihre Ansicht unter der Tastatur 40 zusätzliche Leerzeichen erhält. Ich musste die Schwerkraft nicht einstellen, damit das funktioniert. –

+1

Was passiert mit dem Text innerhalb des Editiertext, wenn Sie dies tun? –

+0

@ user1232726 Wenn Sie die Höhe des Bearbeitungstexts auf wrap_content setzen, erscheint Ihr Text außermittig, aber alles wäre sichtbar. Eine andere Geschichte, wenn Sie zum Beispiel die Texthöhe auf 41dp und paddingBottom auf 40dp setzen –

Verwandte Themen