Android子线程更新UI
在安卓编程中经常会遇到需要在子线程中更新UI的情况,至于为什么不能在子线程中更新UI,想要深入了解的可以看看这篇文章为什么不能在子线程中更新UI;在这里向大家介绍一种应用比较广泛的方法
在线程中发送Message :
new Thread(){
public void run() {
while(true) {
// todo
Message msg = mHandler.obtainMessage();
msg.what = 0x10;
msg.arg1 = (int) ;
msg.arg2 = (int) ;
msg.obj = object;
mHandler.sendMessage(msg);
try {
sleep(20);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
};
}.start();
在Handler中处理Message 数据实现UI的更新
private Handler mHandler = new Handler(new Handler.Callback() {
@Override
public boolean handleMessage(Message msg) {
switch (msg.what) {
case 0x10:
//在此可进行UI操作;
tv.setText(msg.arg1+ msg.arg2+msg.obj);
break;
}
return false;
}
});