我在弹出proressbar的时候,发现handler直接post一个runnable对象的时候,进度条弹出耗时很长,然而采用在一个新线程里面使用handler进度条启动要快的多。第一种情况代码如下:
progress_dialog.show();
mHandler.post(new Runnable() {
@Override
public void run() {
data = XMLUtil.parserXML(JokeMessageActivity.this, R.raw.joke1);
progress_dialog.dismiss();
if(data!=null){
previous.setClickable(true);
next.setClickable(true);
updateJokeMessage();
}
}
});
第二种情况的代码如下:
progress_dialog.show();
new Thread(new Runnable() {
@Override
public void run() {
data = XMLUtil.parserXML(JokeMessageActivity.this, R.raw.joke1);
mHandler.obtainMessage(1).sendToTarget();
}
}).start();