Necesito actualizar algunos UI y hacerlo dentro del hilo de la interfaz de usuario usando runOnUiThread
Ahora los datos para la interfaz de usuario provienen del otro hilo, representado por data
aquí.
Android: ¿cómo pasar datos a Runnable en runOnUiThread?
¿Cómo puedo pasar los datos al Runnable, para que se puedan usar para actualizar la UI? Android no parece permitir el uso de datos directamente. ¿Hay una manera elegante de hacer esto?
public void OnNewSensorData(Data data) {
runOnUiThread(new Runnable() {
public void run() {
//use data
}
});
}
Mi solución fue la creación de un fioeld private Data sensordata
dentro del ejecutable, y la asignación de datos a la misma. Esto solo funciona, si el Data data
original es final.
public void OnNewSensorData(final Data data) {
runOnUiThread(new Runnable() {
private Data sensordata = data;
public void run() {
//use sensordata which is equal to data
}
});
}