我正在尝试使用AsyncTask更新进度条 我的代码看起来像这样
private class ProgressBar extends AsyncTask<Void, Integer, Integer>
{
protected Integer doInBackground(Void... params)
{
int a=2;
for(int i=0;i<=100;i=i+5)
{
SystemClock.sleep(1000);
publishProgress(i);
}
return a;
}
protected void onProgressUpdate(Integer... item)
{
//int no_of_argruments=item.length;
tv.setText("Over !!"+item[0]);
bar.setProgress(item[0]);
}
protected void onPostExecute()
{
if(result[0]!=null)
{
tv.setText("Hurray !!");
Toast.makeText(checkThread.this, "Done!", Toast.LENGTH_SHORT)
.show();
}
}
但是在doInBackground()的完成时,我的onPostExecute()没有被调用,进度条只挂起它的最终值。
如何调用onPostExecute()方法?
答案 0 :(得分:0)
这是postExecute()
的正确签名protected void onPostExecute (Result result)
您的方法是AsyncTask
不了解的方法。