
Originariamente inviato da
zorcraft
dovresti mettere un po di codice cosi come lo hai descritto e un po vago
Hai ragione, eccovi:
codice:
handler = new MyHandler();
new Thread(){
public void run(){
while (running) {
for(int j = 0; j<players.length;j++) {
txtName.setText(players[j].GetNome());
if(ControllaArti(players[j])) {
precnumber = number;
while(number == precnumber)
number = (int) (Math.random()*4);
s+=arti[number];
}
else {
String artolibero = CercaArtiLiberi(players[j]);
number = TrovaArto(artolibero,arti);
s += arti[number];
}
//Abbiamo Preso il nome dell'arto scelto
preccolours = numbercolours;
while(numbercolours == preccolours)
numbercolours = (int) (Math.random()*4);
s+=colori[numbercolours];
//Abbiamo preso il colore scelto
riferimentoImg = manager.getImg(s);
//layout.setBackgroundResource(riferimentoImg);
Message msg = handler.obtainMessage();
Bundle b = new Bundle();
b.putString("key", "cambia lo sfondo");
msg.setData(b);
handler.sendMessage(msg);
System.out.println(" "+s+" ");
try {
Thread.sleep(GameActivity.WAIT_NEXT_CHOOSE);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
s = "";
}
}
}
}.start();
}
codice:
private class MyHandler extends Handler {
@Override
public void handleMessage(Message msg) {
image.setBackgroundResource(riferimentoImg);
}
}