mou*_*907 3 android android-asynctask android-activity
所以我是一个学习android的iOS开发人员,我很难理解一些事情.现在我有一个datamanager类.在该类中,它有一个AsyncTask来更新数据.OnPreExecute我弹出一个活动来显示它正在更新.我知道我可以使用额外的东西将初始信息传递给UpdateActivity.我的问题是我不确定如何在OnProgressUpdate中发送新信息.这是我的代码萎缩:
private class myTask extends AsyncTask<Integer,String,Void>{
@Override
protected void onCancelled() {
super.onCancelled();
isUpdating = false;
}
@Override
protected Void doInBackground(Integer... params) {
//My BG Code
}
@Override
protected void onPostExecute(Void result) {
// TODO Remove updating view
super.onPostExecute(result);
}
@Override
protected void onPreExecute() {
super.onPreExecute();
Intent myIntent = new Intent(mContext,UpdateActivity.class);
mContext.startActivity(myIntent);
}
}
Run Code Online (Sandbox Code Playgroud)
AsyncTask旨在嵌套在Activity类中时效果最佳.
使AsyncTask"特殊"的原因在于它不仅仅是一个工作线程 - 而是它将处理代码的工作线程doInBackground(...)与在Activity的UI线程上运行的方法相结合- onProgressUpdate(...)并且onPostExecute(...)是最常用的.
通过定期调用updateProgress(...)from doInBackground(...),调用该onProgressUpdate(...)方法允许它操作Activity的UI元素(进度条,显示正在下载的文件名称的文本等).
简而言之,不是从AsyncTask触发"更新"活动,而是更新活动本身应该有一个嵌套的AsyncTask,它用于处理更新并将进度发布到UI.
| 归档时间: |
|
| 查看次数: |
7432 次 |
| 最近记录: |