Wie zu deaktivieren, Android Soft-Tastatur für eine bestimmte Aktivität?
Ich habe eine Aktivität mit einem EditText wo muss ich die Eingabe nur zahlen.
Nun, ich habe den Eingabe-Typ für meinen EditText werden nur die Nummer und erstellt eine hübsche Tastatur für meinen Benutzer zu verwenden, aber ich muss auch sicherstellen, dass die soft-Tastatur nicht pop-up für meine Benutzer, wenn Sie klicken Sie auf die EditText.
Ich habe versucht, versteckt sich die Tastatur über das manifestieren sich durch das hinzufügen
android:windowSoftInputMode="stateAlwaysHidden"
in mein Manifest für die jeweilige Tätigkeit, aber nicht für mich arbeiten, weil, sobald der Benutzer klickt auf das EditText die Tastatur erscheint wieder.
Habe ich versucht, das gleiche zu tun programmgesteuert wie so
activity.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
aber das funktioniert auch nicht. Tastatur wird angezeigt, wenn der Benutzer klickt auf das EditText.
Das einzige, was funktionierte war die Einstellung InputType zu null für die EditText etwa so:
EditText.setInputType(InputType.TYPE_NULL);
aber ich kann nicht, weil es erlaubt Benutzern, die über eine Tastatur an Ihr Gerät zur Eingabe von Buchstaben und anderen Zeichen, in dem EditText Feld, während ich möchte, dass jeder gezielt nur die Tastatur, um die Daten in das Feld eingeben.
Sollte ich auch erwähnen, dass ich bin derzeit am testen meiner app unter android 2.1, aber ich möchte meine Lösung für die Arbeit über alle Versionen. Jede Hilfe würde geschätzt werden. Vielen Dank im Voraus.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dachte nur, es könnte möglich sein zu verlängern EditText und Griff den Zugriff auf das softkeyboard es durch und stieß auf diese Frage die eine sehr elegante Lösung für mein problem.
Nur folgte den Schritten, und dieser behandelt das softkeyboard perfekt für mich. Hoffe es hilft anderen, die in dieser Ausgabe.
In Welcher Edittext Sie müssen deaktivieren Sie die soft-Tastatur, fügen Sie das Attribut in der xml das Bearbeiten von text.
Stoppt es die Ausführung der soft-Tastatur.
Verwenden Sie die
android:windowSoftInputMode="stateHidden"
in Ihrer Aktivität in der manifest-Datei. Dies funktionieren wird. Verwenden Sie nicht die android -: justierbares="false" für EditText, es sei denn, wenn Sie nicht bereit sind, die Eingabe von text. Wenn Sie möchten, geben input entfernen Sie dann die Eigenschaft für die edittext in der layout-Datei.Wenn Sie zum Beispiel ViewGroup es ermöglicht Ihnen zu blockieren, die soft-Tastatur mit dieser Methode:
Dank dieser Ansicht wird die Fokus erhalten, bevor jeder seiner Nachkommen.
Können Sie versuchen, diese. Es ist für mich arbeiten:
können Sie Diesen Code verwenden: