2013-03-14 8 views
6

Könnte jemand bitte erklären, warum die Soft-Tastatur erscheint und verschwindet, wenn es funktioniert?Warum erscheint die Android-Soft-Tastatur?

Ich habe ein Layout mit einer Reihe von verschiedenen Steuerelementen, meist EditTexts und Buttons. Wenn ich diese Seite zum ersten Mal zeige, hat ein EditText den Fokus und die Soft-Tastatur deckt die unteren 45% des Bildschirms ab Ich entschied mich dafür, einen Knopf am unteren Rand meiner Seite den Fokus stattdessen zu geben. . .

butDone.setFocusableInTouchMode(true); 
    bResult = butDone.requestFocus(); 

... direkt nach dem setContentView(). Dies funktionierte soweit, dass der Fokus auf den Button gelegt wurde. Die Unterseite bekam den Fokus und der EditText hatte keinen Fokus mehr, aber die Tastatur war immer noch da. Schließlich wurde ich die Tastatur über

los, aber eindeutig meine Theorie über den EditText mit Fokus war falsch. Könnte also jemand bitte die "Regeln" erklären, was die Tastatur erscheinen lässt, oder einen Link zu diesen Regeln? Danke im Voraus!

Antwort

0

Standardmäßig wird der erste EditText den Fokus erhalten, wenn Sie nichts über den Fokus im XML des Layouts definiert haben.

Überprüfen Sie this Antwort für weitere Informationen. Sie sollten diese Lösung verwenden, wenn Sie nicht möchten, dass die Tastatur angezeigt wird, anstatt die Tastatur zu verwerfen.

+0

Also sagen Sie, dass, obwohl ich den Fokus auf die Schaltfläche im Code geben, ignoriert, dass, weil der Fokus nicht in der XML angegeben ist? – user316117

+0

Nein, ich sage nur, dass es eine bessere Lösung ist, das auf XML zu spezifizieren, als dass Android sich zuerst auf den ersten EditText konzentrieren und dann programmgesteuert ändern soll. – Edgar

Verwandte Themen