展会信息港展会大全

Android AsyncTask详解
来源:互联网   发布日期:2016-01-13 21:38:49   浏览:922次  

导读:1. 在AsyncTask中,耗时任务在子线程中执行,回调方法在主线程中执行。2. AsyncTask定义:private class AsyncLoadingTask extends AsyncTaskPARAMS, Result Progress, { @Overrideprotected void ......

1. 在AsyncTask中,耗时任务在子线程中执行,回调方法在主线程中执行。

2. AsyncTask定义:

private class AsyncLoadingTask extends AsyncTask<PARAMS, Result Progress,> {

@Override

protected void onPreExecute() {

super.onPreExecute();

}

@Override

protected Result doInBackground(Params... params) {

return null;

}

@Override

protected void onProgressUpdate(Progress... progress) {

super.onProgressUpdate(progress);

}

@Override

protected void onPostExecute(Result result) {

super.onPostExecute(result);

}

@Override

protected void onCancelled() {

super.onCancelled();

}

}

范型定义:

(1) Params:启动任务时的输入参数,比如:HTTP请求的URL,组件对象。

(2) Progress:任务执行的进度,比如:Integer对象(进度值)。

(3) Result:任务执行結果,比如:Bitmap对象(从网上获取的图片)。

3. AsyncTask的方法:

(1) onPreExecute()方法:任务刚启动时调用些方法,完成初始化操作,在UI线程中执行。

(2) doInBackground()方法:执行任务的主要方法,在子线程执行。

(3) onProgressUpdate()方法:在doInBackground()调用publicProgress(Progress... progress)方法后调用,进行UI进度更新,在UI线程中执行。

(4) onPostExecute()方法:在任务执行完成后执行,利用执行結果更新UI界面,在UI线程中执行。

(5) onCancelled()方法:在任务被取消时执行。

赞助本站

人工智能实验室

相关热词: AsyncTask

相关内容
AiLab云推荐
展开

热门栏目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能实验室 版权所有    关于我们 | 联系我们 | 广告服务 | 公司动态 | 免责声明 | 隐私条款 | 工作机会 | 展会港