我現在正在開發一個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