Ich möchte in der Lage sein, den Fokus vom EditText zu entfernen. Wenn zum Beispiel die Tastatur erscheint und der Benutzer sie mit der Zurück-Taste ausblendet, möchte ich, dass der Fokus und der Cursor verschwinden. Wie lässt sich das bewerkstelligen?
Antworten
Zu viele Anzeigen?Autofokus entfernen edittext Android
Es funktioniert bei mir
bearbeiten In dem Link wird vorgeschlagen, LinearLayout zu verwenden, aber einfache Ansicht wird funktionieren
<View
android:id="@+id/focus_thief"
android:layout_width="1dp"
android:layout_height="1dp"
android:focusable="true"
android:focusableInTouchMode="true" />
Wenn dieser "Dieb" dann am Anfang des Layouts platziert wird (um das erste fokussierbare Element zu sein), werden Aufrufe an clearFocus()
wird funktionieren.
Um die Tastatur auszublenden, wenn die Aktivität beginnt, schreiben Sie den folgenden Code in onCreate()..
InputMethodManager imm = (InputMethodManager)
getSystemService(Activity.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(getWindow().getDecorView().getWindowToken(), 0);
So deaktivieren Sie den Fokus und entfernen den Cursor von edittext.....
editText.clearFocus();
editText.setCursorVisible(false);
Sie können auch Folgendes einschließen Android:windowSoftInputMode="stateAlwaysHidden" in Ihrem Aktionsabschnitt des Manifests.
Dies ist gleichbedeutend mit:
this.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
sondern in XML-Form.
Zu Ihrer Information: Sie können die Tastatur auch mit Codes ausblenden:
// hide virtual keyboard
InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(mYourEditText.getWindowToken(), 0);
0 Stimmen
Gibt es eine andere Ansicht, die nach EditText fokussiert werden kann?
0 Stimmen
Ist es möglich, eine WebView zu fokussieren?
0 Stimmen
Siehe meine Antwort hier: stackoverflow.com/questions/3890033/
5 Stimmen
Schau dir das an stackoverflow.com/questions/1555109/
0 Stimmen
Einzeiliger Code stackoverflow.com/a/46580242/6611895
0 Stimmen
Zum Entfernen des Cursors aus dem zu bearbeitenden Text editText.setCursorVisible(false);