web-dev-qa-db-fra.com

Attendez 5 secondes

J'ai essayé de chercher la réponse, en ai trouvé mais je n'ai pas fonctionné. Je veux attendre 5 secondes avant de commencer une autre méthode de vide public. Le fil de sommeil ne fonctionnait pas pour moi. Merci de donner vos suggestions. S'il existe un moyen de "patienter ()" sans utiliser de thread, j'aimerais bien le savoir. 

public void check(){
//activity of changing background color of relative layout
}

Je veux attendre 3 secondes avant de changer la couleur de mise en page relative.

10
user7320356

il suffit d'ajouter une doublure avec du lambda

(new Handler()).postDelayed(this::yourMethod, 5000);
11
Mike Antipiev

Voyez si cela fonctionne pour vous. Assurez-vous d'importer le Android.os.Handler

      Handler handler = new Handler();
            handler.postDelayed(new Runnable() {
                public void run() {
                    // yourMethod();
                }
            }, 5000);   //5 seconds
34
seekingStillness

vous pouvez utiliser des gestionnaires Java pour accomplir votre tâche:

Handler handler = new Handler();
handler.postDelayed(new Runnable() {
    public void run() {
     // Actions to do after 10 seconds
    }
}, 10000);

pour plus d'informations, lisez l'URL suivante:

https://developer.Android.com/reference/Android/os/Handler.html

7
user6016902

J'ai déjà répondu à un autre message, cela pourrait peut-être aider quelqu'un.

Comment faire attendre Android?

0
Samet