android学习---使用AsyncTask

一、什么是AsyncTask

1.AsyncTask是Android提供的轻量级(实现代码量少)的异步类。2.为了降低异步通信的开发难度,提供了AsyncTask
3.AsyncTask直接继承于Object类,位于android.os包中。4.使用AsyncTask可以忽略Looper、MessageQueue、Handler 等复杂对象,更便捷的完成异步耗时操作。

二、AsyncTask的使用步骤

1.新建内部类继承AsyncTask   

2.定义AsyncTask的三种泛型参数  
AsyncTask的三种泛型参数:
Params:  启动任务执行的输入参数
Progress: 后台任务执行的百分比
Result:  后台执行任务最终返回的结果
3.重写doInbackground抽象方法(子线程)  
 执行完onPreExecute方法后,系统执行此方法;此方法运行在子线程中,比较耗时的操作放在此方法中执行。如果需要更新UI元素,可以调用publishProgress(Progress...)方法来完成。
4.重写onPreExecute方法    
异步任务开始执行时,系统最先调用此方法;此方法运行在主线程中,可以对控件进行初始化等操作。
5.重写onProgressUpdate方法    
当在后台任务中调用了publishProgress(Progress...)方法后,onProgressUpdate(Progress...)方法就会很快被调用,该方法携带的参数就是后台任务中传递过来的。在这个方法中可以对UI进行操作,利用参数中的数值就可以对界面元素进行相应的更新。
6.重写onPostExecute方法    
当异步任务执行完成后,系统会调用此方法;此方法运行在主线程中,可以修改控件状态,例如:下载完成。
7.在需要启动的地方调用execute方法
new 内部类名.execute();


注:简单的来说:doInbackground()方法中执行具体的耗时任务,onProgressUpdate()方法中进行UI操作,在onPostExecute()方法中执行一些任务的收尾工作。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值