2012-04-10 11 views
11

Ich arbeite an einer Android-Anwendung, wo ich bereit bin, die Eingabe vom Benutzer zu erhalten. Ich habe ein Layout dafür erstellt, das eine Bildlaufansicht als Stammansicht hat. & Relatives Layout, da es alle anderen Layouts innerhalb dieses relativen Layouts sind. Aber wenn bearbeiten Text ist am unteren Rand des Bildschirms & Benutzer klicken Sie darauf, um Tastatur zu bringen es zeigt einige leere Box zwischen Text bearbeiten & Tastatur & nach diesem wenn der Benutzer ein beliebiges Wort gibt es nicht angezeigt wird in Text bearbeiten angezeigt. Aber wenn Text bearbeiten über fast mehr als die Hälfte des Bildschirms ist, funktioniert es gut. Sie können durch einen Blick auf Bilder untenKeyboard Problem bei der Fokussierung auf den unteren Text bearbeiten in Android

Here is my code

enter image description here

enter image description here

enter image description here

deutlicher bekommen

jemand diese Art von Problem konfrontiert Hat ?? Bitte helfen !!!

+0

Wo ist diese leere Box? Könnten Sie das bitte skizzieren? –

+0

@ a.ch. - leerer Platz gerade unter Text im zweiten Bild bearbeiten –

+0

Es ist der schwarze Bereich, richtig? Dann sollten Sie die XML-Datei Ihres Layouts angeben. –

Antwort

2

Der Standard IME-Modus auf der Aktivität im Manifest gesetzt (android: windowSoftInputMode = „adjustPan“) wird das Haupt Layout schwenken, so dass das Textfeld in der Mitte des sichtbaren Bereichs ist. Während sich der Großteil Ihres Inhalts in einer scrollbaren Region befindet, bewegt er einfach die gesamte Region und scrollt den Inhalt nicht in die Ansicht. Wenn Sie android: windowSoftInputMode = "adjustNothing" verwenden, verhindert dies das Layout-Panning, aber wird auch effektiv nichts tun und nur Ihre ursprüngliche Eingabe abdecken.

Meine Empfehlung wäre, adjustResize verwenden, könnte dies für Sie beheben. Wenn nicht, müssen Sie eine benutzerdefinierte Scroll-Region fokussieren.

+0

Für Info: "adjustNothing" wird nicht akzeptiert (-> String-Typen nicht erlaubt) durch die neuesten SDK und Tools, trotz was die Dokumente sagen. Ich nehme an, dass "adjustResize | adjustPan" den gleichen Effekt hat. Muss ein Fehler sein, denke ich. – NickT

+0

wahr. yeah adjustResize sollte wahrscheinlich den Trick machen. Solange das Eingabefeld bleibt –