sendMessageDelayed 怎么用?
本帖最后由 aizhengdong 于 2012-12-31 14:17:23 编辑 利用handler和message来更新进度条进度,用sendMessageDelayed(msg, 2000);来做延时,只是再第一次加进度的时候延时2秒,之后延时就不起作用了,2秒后进度条一瞬间进度就加满了。为什么是这样呢?请大家指教!
发消息的代码:
new Thread(){
@Override
public void run() {
while(progress <100){
progress = pgbar.getProgress()+5;
Message msg = myhandler.obtainMessage();
msg.what = 1;
myhandler.sendMessageDelayed(msg, 2000);
}
}
}.start();private Handler myhandler = new Handler(){
@Override
public void handleMessage(Message msg) {
switch (msg.what) {
case 1:
pgbar.setProgress(progress);
break;
}
super.handleMessage(msg);
}
};