Cacher le clavier après l'appel de nouvelle Activité qui montre une ProgressDialog

J'ai du mal avec le clavier à l'écran. J'ai une activité avec une EditText qui montre le clavier, et un bouton pour accéder à une deuxième activité. La deuxième activité montre une ProgressDialog sur son onCreate(), n'choses, et rejette la ProgressDialog. Le problème est que, bien que la ProgressDialog est affiché, ainsi que le clavier.

Je voudrais le clavier à disparaître avant la création de la ProgressDialog. J'ai cherché thorougly les deux StackOverflow et d'autres sites, mais rien ne semble fonctionner avec ce scénario particulier.

Je suis joignant deux photos pour votre référence:

Cacher le clavier après l'appel de nouvelle Activité qui montre une ProgressDialog
Cacher le clavier après l'appel de nouvelle Activité qui montre une ProgressDialog

C'est le code de la première activité:

public class FirstActivity extends Activity {
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        findViewById(R.id.button1).setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View arg0) {
                Intent intent = new Intent(FirstActivity.this, SecondActivity.class);
                startActivity(intent);
            }
        });
    }
}

et c'est le code de la deuxième activité:

public class SecondActivity extends Activity {
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.second);

        //TODO: hide keyboard here

        final ProgressDialog dialog = ProgressDialog.show(this, "", "Please wait...", true, false, null);

        //in real code, here there is an AsyncTask doing stuff...
        new Handler().postDelayed(new Runnable() {
            @Override
            public void run() {
                dialog.dismiss();
            }
        }, 5000);
    }
}

Grâce

  • Jetez un oeil à ceci: stackoverflow.com/a/3858873/1321873
  • déjà essayé, pas applicable ici. La deuxième activité doit masquer le clavier, même si le clavier a été montré par une autre activité.
InformationsquelleAutor Venator85 | 2012-05-03