Sleep () en java (Android)

Estoy siguiendo este tutorial para tener una pantalla de carga en mi programa. El tutorial dice que mi actividad debe Sleep () usando el comando Sleep (), sin embargo, no reconoce Sleep () como una función y me proporciona un error, preguntando si me gustaría crear un método llamado Sleep ().

Aquí hay un enlace al tutorial:

Http://androidcookbook.com/Recipe.seam;jsessionid=4DBCC1688B51DB16A2A40A86E135D361?recipeId=1599

Aquí está el ejemplo de código:

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); } } 

Puede utilizar uno de los siguientes métodos:

 Thread.sleep(timeInMills); 

o

 SystemClock.sleep(timeInMills); 

SystemClock.sleep(milliseconds) es una función de utilidad muy similar a Thread.sleep(milliseconds) , pero ignora InterruptedException . Utilice esta función para retrasos si no utiliza Thread.interrupt() , ya que preservará el estado interrumpido del subproceso.

La función es Thread.sleep(long) .

Tenga en cuenta, sin embargo, que no debe realizar un sueño en el subproceso de interfaz de usuario.

El código que publicaste es horrible. No utilice eso en un dispositivo real. Obtendrá un error de "aplicación no responde" si ejecuta algo similar a esto.

Si utiliza Handlers, tenga en cuenta que se crea un Handler en el hilo donde se ejecuta . Así que llamar a new Handler().post(... en el subproceso de interfaz de usuario ejecutará el ejecutables en el subproceso de interfaz de usuario, incluida esta "operación de ejecución larga" .La ventaja es que puede crear un controlador para el subproceso de interfaz de usuario que puede utilizar Posteriormente, como se muestra a continuación.

Para poner la operación de ejecución larga en un subproceso de fondo, debe crear un subproceso alrededor del ejecutable, como se muestra a continuación. Ahora, si desea actualizar la interfaz de usuario una vez que se ha completado la operación de larga ejecución, debe publicarla en el subproceso de interfaz de usuario utilizando un controlador.

Tenga en cuenta que esta funcionalidad es un ajuste perfecto para un AsyncTask que hará que este aspecto mucho más limpio que el patrón de abajo. Sin embargo, incluyo esto para mostrar cómo se relacionan los manejadores, los subprocesos y los ejecutables.

 public class LoadingScreenActivity extends Activity { //Introduce a delay private final int WAIT_TIME = 2500; private Handler uiHandler; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); uiHandler = new Handler(); // anything posted to this handler will run on the UI Thread System.out.println("LoadingScreenActivity screen started"); setContentView(R.layout.loading_screen); findViewById(R.id.mainSpinner1).setVisibility(View.VISIBLE); Runnable onUi = new Runnable() { @Override public void run() { // this will run on the main UI thread Intent mainIntent = new Intent(LoadingScreenActivity.this,ProfileData.class); LoadingScreenActivity.this.startActivity(mainIntent); LoadingScreenActivity.this.finish(); } }; Runnable background = new Runnable() { @Override public void run() { // This is the delay Thread.Sleep( WAIT_TIME ); // This will run on a background thread //Simulating a long running task Thread.Sleep(1000); System.out.println("Going to Profile Data"); uiHandler.post( onUi ); } }; new Thread( background ).start(); } 
  • Cómo rellenar el adaptador RecyclerView con Firebase
  • ¿Qué es CONNECTED_STRIPE_ACCOUNT_ID? ¿Cómo obtenerlo desde la plataforma android?
  • cómo determinar si una conexión a Internet está actualmente disponible y activa en un dispositivo android?
  • Android - Extraño EscapeUtil.unescapeString falla
  • ¿Los hilos se eliminan automáticamente después de que el método run () sale en Java?
  • No se pueden actualizar los resúmenes de cabecera de PreferenceActivity en teléfonos inteligentes que ejecutan 4.x
  • Android-java: comprueba la comprobación de valores booleanos para null
  • El Administrador de etiquetas de Google envía números enteros en lugar de decimales
  • ¿Cómo manejar páginas web "infinitas"?
  • Android eliminación de un archivo de almacenamiento interno
  • Android: pasar AppWidgetId a un servicio
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.