So blenden Sie die Soft-Tastatur aus, wenn die Aktivität beginnt

Lesezeit: 3 Minuten

Ich habe einen Edittext mit android:windowSoftInputMode="stateVisible" im Manifest. Jetzt wird die Tastatur angezeigt, wenn ich die Aktivität starte. Wie verstecke ich es? Ich kann nicht benutzen android:windowSoftInputMode="stateHidden Denn wenn die Tastatur sichtbar ist, minimieren Sie die App und setzen Sie sie fort. Die Tastatur sollte sichtbar sein. Ich habe es mit versucht

InputMethodManager imm = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(getCurrentFocus().getWindowToken(), 0);

aber es hat nicht funktioniert.

So blenden Sie die Soft Tastatur aus wenn die Aktivitat beginnt
Neenu

In dem AndroidManifest.xml:

<activity android:name="com.your.package.ActivityName"
          android:windowSoftInputMode="stateHidden"  />

oder Versuche

getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN)‌​;

Bitte prüfe Das Auch

  • Danke für android:windowSoftInputMode="stateHidden"

    – Shailendra Madda

    9. Januar 2016 um 18:32 Uhr

  • Tatsächlich gibt es auch eine großartige Antwort darauf, wie Sie verhindern können, dass Sie sich auf den Bearbeitungstext konzentrieren. stackoverflow.com/questions/4668210/…

    – Boris Treuchow

    11. Januar 2016 um 10:31 Uhr

Verwenden Sie die folgenden Funktionen, um die Tastatur ein-/auszublenden:

/**
 * Hides the soft keyboard
 */
public void hideSoftKeyboard() {
    if(getCurrentFocus()!=null) {
        InputMethodManager inputMethodManager = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE);
        inputMethodManager.hideSoftInputFromWindow(getCurrentFocus().getWindowToken(), 0);
    }
}

/**
 * Shows the soft keyboard
 */
public void showSoftKeyboard(View view) {
    InputMethodManager inputMethodManager = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE);
    view.requestFocus();
    inputMethodManager.showSoftInput(view, 0);
}

  • Context.INPUT_METHOD_SERVICE für diejenigen, die in Fragmenten oder nicht in der Hauptaktivität sind usw.

    – Oliver Dixon

    16. Oktober 2015 um 8:02 Uhr


  • Sie können dies versuchen. Es funktioniert, wenn Sie es von der Aktivität aus aufrufen. getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN)‌​;

    – Sinan Dizdarević

    21. Januar 2016 um 14:25 Uhr

  • Was ist, wenn wir dies innerhalb eines Zuhörers aufrufen müssen? Wie onFocusChange()

    – Burak Kaymakci

    2. Januar 2020 um 0:40 Uhr

Fügen Sie einfach zwei Attribute zur übergeordneten Ansicht von editText hinzu.

android:focusable="true"
android:focusableInTouchMode="true"

1645917790 244 So blenden Sie die Soft Tastatur aus wenn die Aktivitat beginnt
Adnan

Versuche dies:

<activity
    ...
    android:windowSoftInputMode="stateHidden|adjustResize"
    ...
>

Sehen Sie sich dieses für weitere Details an.

  • oder android:windowSoftInputMode=”stateUnchanged” – Dies funktioniert so: nicht anzeigen, wenn es nicht bereits angezeigt wird, aber wenn es beim Aufrufen der Aktivität geöffnet war, lassen Sie es geöffnet).

    – Sujet

    27. Februar 2020 um 8:54 Uhr

  • ja du hast recht. aber was ist, wenn sich die Ausrichtung ändert?

    – Saneesh

    27. Februar 2020 um 10:46 Uhr

So blenden Sie die Soft Tastatur aus wenn die Aktivitat beginnt
Rana Pratap Singh

Zum Ausblenden der Softkeyboard beim Start einer neuen Aktivität oder onCreate(),onStart() usw. können Sie den folgenden Code verwenden:

getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);

Verwenden AndroidManifest.xml

<activity android:name=".YourActivityName"
      android:windowSoftInputMode="stateHidden"  
 />

Verwenden Java

getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN);

Verwenden Sie die obige Lösung, um die Tastatur auszublenden, aber bearbeiten Sie den Text nicht, wenn Aktivitäten erstellt werden, sondern greifen Sie ihn, wenn Sie sie berühren, indem Sie Folgendes verwenden:

fügen Sie Ihre hinzu Text bearbeiten

<EditText
android:focusable="false" />

Fügen Sie auch einen Listener Ihres EditText hinzu

youredittext.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
    v.setFocusable(true);
    v.setFocusableInTouchMode(true);
    return false;
}});

1645917792 81 So blenden Sie die Soft Tastatur aus wenn die Aktivitat beginnt
Treffer

Fügen Sie Ihrer XML-Datei den folgenden Text hinzu.

<!--Dummy layout that gain focus -->
            <LinearLayout
                android:layout_width="0dp"
                android:layout_height="0dp"
                android:focusable="true"
                android:focusableInTouchMode="true"
                android:orientation="vertical" >
            </LinearLayout>

869380cookie-checkSo blenden Sie die Soft-Tastatur aus, wenn die Aktivität beginnt

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy