>完整的AsyncTask
public class MyAsyncTask extends AsyncTask<String, Integer, List<String>>{
/**
* 在首次執行異步任務時 調用此方法 做初始化操作
*/
@Override
protected void onPreExecute() {
// TODO Auto-generated method stub
super.onPreExecute();
}
/**
* 在子線程中執行 做耗時操作
*/
@Override
protected List<String> doInBackground(String... params) {
// TODO Auto-generated method stub
//publishProgress(values)
return null;
}
/**
* 更新進度的方法 在doInBackground中 執行publishProgress(values) 將進度值發送給onProgressUpdate
*/
@Override
protected void onProgressUpdate(Integer... values) {
// TODO Auto-generated method stub
super.onProgressUpdate(values);
}
/**
* 在主線程中更新UI 在執行完doInBackground之後執行 onPostExecute
*/
@Override
protected void onPostExecute(List<String> result) {
// TODO Auto-generated method stub
super.onPostExecute(result);
}
//點擊其他按鈕 取消AsyncTask時 執行此方法
@Override
protected void onCancelled(List<String> result) {
// TODO Auto-generated method stub
super.onCancelled(result);
}
}