Je suis ce tutoriel pour avoir un écran de chargement dans mon programme. Le tutoriel dit que mon activité devrait Sleep() en utilisant la commande Sleep(), mais elle ne reconnaît pas Sleep() comme une fonction et me fournit une erreur, me demandant si je voudrais créer une méthode appelée Sleep().Sleep() dans Java (Android)
Voici un lien vers le tutoriel:
http://androidcookbook.com/Recipe.seam;jsessionid=4DBCC1688B51DB16A2A40A86E135D361?recipeId=1599
Voici l'exemple de code:
public class LoadingScreenActivity extends Activity {
//Introduce an delay
private final int WAIT_TIME = 2500;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
System.out.println("LoadingScreenActivity screen started");
setContentView(R.layout.loading_screen);
findViewById(R.id.mainSpinner1).setVisibility(View.VISIBLE);
new Handler().postDelayed(new Runnable(){
@Override
public void run() {
//Simulating a long running task
this.Sleep(1000);
System.out.println("Going to Profile Data");
/* Create an Intent that will start the ProfileData-Activity. */
Intent mainIntent = new Intent(LoadingScreenActivity.this,ProfileData.class);
LoadingScreenActivity.this.startActivity(mainIntent);
LoadingScreenActivity.this.finish();
}
}, WAIT_TIME);
}
}
Thread.sleep (1000); –
Vous essayez de combiner 'sleep()' avec Handler, ce qui est inutile puisque 'postDelay()' va déjà introduire un délai. Si vous voulez un délai plus long, augmentez 'WAIT_TIME'. – Sam
Je pense qu'il vaut la peine de souligner, que ce n'est pas une bonne idée d'utiliser un écran de chargement, juste pour le faire. Je comprends que vous suivez un tutoriel, et c'est bien.Mais une fois que vous êtes sur le point de créer quelque chose pour les utilisateurs, ne leur faites pas attendre plus longtemps que nécessaire. Si vous avez des données à charger, faites-le et montrez un splash pendant le chargement, mais ne pas coder un temps d'attente arbitraire. Vous allez juste perdre leur temps. – FoamyGuy