162 votes

Comment masquer le clavier virtuel lorsque l'activité démarre

J'ai un Edittext avec android:windowSoftInputMode="stateVisible" dans le Manifest. Maintenant, le clavier sera affiché lorsque je démarre l'activité. Comment le masquer? Je ne peux pas utiliser android:windowSoftInputMode="stateHidden" car lorsque le clavier est visible, puis que je réduis l'application et la reprendre, le clavier doit être visible. J'ai essayé avec

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

mais ça n'a pas fonctionné.

380voto

Neenu Points 924

Dans le AndroidManifest.xml:

ou essayer

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

Veuillez consulter également ce lien

208voto

Sherif elKhatib Points 23987

Utilisez les fonctions suivantes pour afficher/masquer le clavier :

/**
 * Masquer le clavier virtuel
 */
public void hideSoftKeyboard() {
    if(getCurrentFocus()!=null) {
        InputMethodManager inputMethodManager = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE);
        inputMethodManager.hideSoftInputFromWindow(getCurrentFocus().getWindowToken(), 0);
    }
}

/**
 * Afficher le clavier virtuel
 */
public void showSoftKeyboard(View view) {
    InputMethodManager inputMethodManager = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE);
    view.requestFocus();
    inputMethodManager.showSoftInput(view, 0);
}

48voto

mani345 Points 170

Il suffit d'ajouter deux attributs à la vue parent de editText.

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

37voto

Saneesh Points 686

Placez ceci dans le manifeste à l'intérieur de la balise Activité

  android:windowSoftInputMode="stateHidden"

27voto

Adnan Points 757

Essayez ceci :

Jetez un œil sur celui-ci pour plus de détails.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X