Red de conocimiento informático - Computadora portátil - Cómo lidiar con operaciones que consumen mucho tiempo en Android

Cómo lidiar con operaciones que consumen mucho tiempo en Android

El controlador es en realidad un mecanismo de procesamiento de mensajes. Primero, cree un objeto Handler en el hilo principal (es decir, la interfaz de usuario) y anule el método handMessage(Message msg). El mensaje en el método es un mensaje del hilo secundario, que indica que el hilo secundario ha completado el procesamiento y el hilo principal ha recibido la notificación del mensaje. Deje que el hilo principal haga el dibujo de la interfaz de usuario.

Luego, el hilo secundario debe enviar un mensaje después de completar el trabajo, por ejemplo:

run(){

data = getDataFromInternet(); Consume mucho tiempo El trabajo de .sendMessage(msg)sendMessage(msg);//Enviar

}

Entonces el controlador es responsable de recibir el mensaje en el hilo principal:

public Handler handler = new Handler(){//Manejar el dibujo de la interfaz de usuario

@SuppressWarnings("unchecked")

@Override

public void handleMessage(Mensaje mensaje) {

cambiar (msg.what) {

caso 0:

datos = (Lista>) msg.obj;

if(data == null){

Toast.layout.allmovielist_item,

new String[] { "picurl", "chname ", "director", " rol principal",

"showtime", "country" }, new int[] { R.id. picurl,

R.id.chname, R.id.Director, R .id.leadrole,

R.id.fshowtime, R.id.country },mListView);

TextView v = new TextView( AllMovieActivity. this);

v.setHeight(80);

v.setSelectAllOnTextView(setSelectAllOnFocus(false);

mListView.addFooterView(v);

mListView.setAdapter (adaptador);

}

descanso;

Valor predeterminado:

descanso;

}

}

}

;