Tengo un servicio que envía una intención a mi actividad cada 0.1 segundos. Lo uso para actualizar una implementación personalizada de un cronómetro. Aquí todo va bien. El problema viene cuando quiero actualizar 14 TextView que tengo en una TableView dentro de un Fragmento en mi Actividad. Aquí la aplicación es muy lenta.Varias actualizaciones de TextViews muy lentamente
El método en mi actividad donde recibe la Intención del Servicio:
private BroadcastReceiver broadcastReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
long milis = intent.getLongExtra("milis",0);
if(mFragment != null)
mFragment.Update(milis);
}
};
El código dentro del Fragmento donde puedo actualizar los TextViews:
public void actualizarTiempoJuego(long milis){
// Se recuperan los tiempos acumulados y se aumenta la cantidad pasada como parámetro
for(int i=0;i<7;++i) {
long mCurrentMilis1 = mVectorMilis1.get(i);
long mCurrentMilis2 = mVectorMilis2.get(i);
TextView1 t1 = mListaTitularLayoutLocal.get(i);
TextView1 t2 = mListaTitularLayoutVisitante.get(i);
t1.setText(String.value(milis + mCurrentMilis1));
t2.setText(String.value(milis + mCurrentMilis2));
}
}
estoy haciendo nada malo, o ¿Es solo que estoy tratando de hacer algo muy complejo en términos de eficiencia?
me gustaría crear una cadena de 'molinos 'y usarlo 14 veces, en lugar de tratar de crear 14 cadenas idénticas. Y luego use las herramientas de Android para probar si un estándar para bucle, un bucle for-each o el uso de iteradores proporciona los resultados más rápidos. – Sam
@Sam. Esta es una versión ligera. Copié aquí así para que sea más fácil de entender. Lo edito para hacerlo más completo. – gutiory
¿Hay más información que le gustaría para aceptar una respuesta? –