Ich habe einen Bildschirm, in dem das erste Feld ein EditText ist und der beim Start den Fokus erhält. Außerdem wird der numerische Eingabetyp angezeigt, was sehr ärgerlich ist
Wie kann ich sicherstellen, dass beim Starten der Aktivität der Fokus nicht erreicht und / oder das Eingabefeld nicht angehoben wird?
android
keyboard
popup
android-softkeyboard
Pentium10
quelle
quelle
Formats: flag Values: adjustNothing, adjustPan, adjustResize, adjustUnspecified, stateAlwaysHidden, stateAlwaysVisible, stateHidden, stateUnchanged, stateUnspecified, stateVisible Specify the default soft-input mode for the main window of this activity. A value besides "unspecified" here overrides any value in the theme.
Gehen Sie zu Ihrer Anwendungsmanifestdatei und schreiben Sie diese Zeile für die Aktivität, für die Sie das automatische Tastatur-Popup deaktivieren möchten.
quelle
Damit die Tastatur nicht programmgesteuert angezeigt wird, das Standard-Widget jedoch weiterhin einen Fokusaufruf erhält:
im
onResume()
quelle
oder fügen Sie einfach das
android:windowSoftInputMode="stateHidden"
Aktivitätstag hinzuManifest.xml
quelle
Dies ist normalerweise ein Chaos. Das erste, was ich versuche, ist zu versuchen, den Fokus mit einer anderen Ansicht über zu stehlen. Sie müssen auch den fokussierbaren und fokussierbaren InTouchMode haben.
quelle
Lassen Sie eine andere Ansicht den Fokus erfassen. Standardmäßig wird die erste fokussierbare Ansicht fokussiert, wenn ein Layout aufgeblasen wird. Sie können die Fokussierung auf eine andere Ansicht über XML anfordern:
Dies funktioniert für jede Ansicht.
Wenn Sie es programmgesteuert tun möchten, können Sie verwenden
view.requestFocus()
.quelle
quelle
edit
Link und nehmen Sie Ihre Änderungen vor. Und bitte versuchen Sie, Ihren Code zu formatieren, indem Sie Ihren Code auswählen und die Schaltfläche Codebeispiel verwenden{}
oder drückenCtrl+K
.Durch Hinzufügen
android:windowSoftInputMode="stateHidden"
zu Ihrer Aktivität im Manifest wird die Tastatur nur ausgeblendet, wenn Sie die Aktivität starten oder wie Google sagtVerwenden Sie die Option, um die Tastatur auch dann auszublenden, wenn der Benutzer die Zurück-Taste drückt und von einer anderen Aktivität zu Ihrer Aktivität zurückkehrt
android:windowSoftInputMode="stateAlwaysHidden"
quelle
Ich habe dies nicht versucht und bin auch nicht in der Nähe meines Programmiercomputers, aber ich würde vermuten, dass das programmgesteuerte Senden eines Fokus an die übergeordnete Ansicht oder etwas Ähnliches den Trick tun könnte - das ist eher eine Problemumgehung als eine Lösung, kann es aber wiederum nicht einfach testen ein Gedanke
quelle
.requestFocus();
einen Knopf gedrückt und immer noch die Tastatur Popups.