Mam bardzo prosty kod do czynienia z obsługą:Android, wiadomości Handler
Handler seconds=new Handler() {
@Override
public void handleMessage(Message msg) {
bar.incrementProgressBy(5);
tView1.setText("r:"+msg);
}
};
i mój wątku:
Thread seconds_thread=new Thread(new Runnable() {
public void run() {
try {
for (int i=0;i<20 && isRunning.get();i++) {
Thread.sleep(1000);
Message m = new Message();
Bundle b = new Bundle();
b.putInt("what", 5); // for example
m.setData(b);
seconds.sendMessage(m);
}
}
catch (Throwable t) {
// just end the background thread
}
}
});
Jak widać powyżej próbuję zmienić wartość " what
"w wiadomości, więc mogę robić różne rzeczy na podstawie wiadomości, ale zgodnie z" tView1.setText("r:"+msg)
"wartość" what
"nie zmienia się na 5 :(
wyświetla tylko" what=0
"
Jak zmienić wartości wiadomości, aby móc robić różne rzeczy na podstawie wiadomości?
Dzięki!
Czytanie o "pakiecie" na drugie pytanie o własne parametry http://developer.android.com/reference/android/os/ Bundle.html To prosta koncepcja. (Para klucza i wartości) –
To działało idealnie! Dzięki! – Ryan
Sposób, w jaki wyjaśniłeś koncepcję, którą łatwo było zrozumieć, gdy kliknąłem ten link i dotarło do "paczek", a co nie, przeleciało nad moją głową :( – Ryan