我现在正在开发一个android应用程序,其中我需要在完成一些处理后显示文本。 我正在使用线程在后台运行进程,同时向用户显示进度对话框。该线程正常工作,我一步一步地跟着它,显然,它也很好;然而,我称它为止的方法似乎并没有结束(至少在正常循环中),因为我后来设置的文本会立即显示,我必须等待并执行其他一些操作(如按顺序它显示任务没有完成和禁止TextView被更新
下面是一块的,我遇到的麻烦代码:
private OnClickListener saldoDisp = new OnClickListener(){
public void onClick(View v){
int x = s2.getSelectedItemPosition();
branchSel = arrSucsId[x];
mainProc();
saldoAdminTex.setText(strSaldo); //The late one
}
};
public void mainProc(){
chekP = new Thread (null,doProc,"Background");
chekP.start();
mProgress =ProgressDialog.show(SivetaAsaldo.this, "","Obteniendo saldo...",true, false);
}
private Runnable doProc = new Runnable(){
public void run(){
if(getSaldoAdmin(levelSel,branchSel))
{
mProgress.dismis();
Log.i(TAG,"Task completed properly");
}else
handler.post(tosti);
}
};
所以我得到了“任务正确完成”,但似乎仍然等待别的东西,任何蛛丝马迹家伙? 感谢您抽出一点时间来检查它=)。
太好了! AsyncTask是肯定的路要走=)谢谢你们! – 2011-03-10 18:39:08