Getting java.lang.IllegalStateException: El thread actual debe tener un looper

Estoy recibiendo este error y mi aplicación se bloquea:

Java.lang.IllegalStateException: El subproceso actual debe tener un looper!

No obtuve mucho sobre cómo usar looper en Google, estoy usando hilos de rosca (principalmente para la función de sueño), manejador (para descargar la imagen mientras se ejecuta la tarea de Async) y tarea de Async (para obtener los datos de JSON de la URL) . No tengo idea de cómo resolver este problema, por lo que cualquier sugerencia será muy útil.

Este es el código para el hilo que se ejecuta al hacer clic en el botón:

View view = flingContainer.getSelectedView(); view.findViewById(R.id.item_swipe_right_indicator).setAlpha((float) 1.0); Thread timer = new Thread() { public void run() { try { sleep(320); } catch (InterruptedException e) { e.printStackTrace(); } finally { flingContainer.getTopCardListener().selectLeft(); } } }; timer.start(); 

Estoy usando este libray y log-cat es: imagen

Donde: at com.enormous.quotesgram.MainActivity$3.run(MainActivity.java:479) en último en log-cat corresponde a la línea: flingContainer.getTopCardListener().selectLeft(); En la parte superior de código.

Intente lo siguiente (por desgracia, no puedo probar el código):

 Thread timer = new Thread() { public void run() { try { sleep(320); } catch (InterruptedException e) { e.printStackTrace(); } finally { runOnUiThread(new Runnable() { @Override public void run() { flingContainer.getTopCardListener().selectLeft(); } }); } } }; 

La idea detrás es, que el hilo del Timer no es un hilo Looper (que resulta en una excepción diciendo "El hilo actual debe tener un bucle" ). Sin embargo, el hilo de interfaz de usuario es un hilo Looper (consulte, por ejemplo, este sitio ).

Como flingContainer.getTopCardListener().selectLeft() probablemente está diseñado para ejecutarse en el hilo de interfaz de usuario que falla, si no se invoca en el lado de un hilo de pipeline.

FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.