一、简介
防止主线程阻塞,所以采用异步处理的方式,AsycTask就是Android提供的异步处理的类,它比Handler更轻量,但是实际上更耗资源,适用于简单的异步处理,不建议用AsycTask处理特别耗时的操作
二、使用
- 首先继承AsycTask类,这个类有三个泛型参数<Params,Progress,Result>分别对应是传入的参数类型,进度,返回的结果
- 最少实现
doInBackground(Params p):执行在子线程,用于处理耗时操作,在这个方法里可以用publichProgress(Progress...)更新进度
onPostExecute(Result r):执行在主线程,使用doInBackground得到的结果操作UI - 选择实现
onProgressUpDate(Progress pro):执行在主线程,用于更新进度
onPreExecute():当任务开始前调用此方法
onCancelled():用于取消任务
注意:因为要操作UI,所以AsycTask要在主线程中实例化
网友评论