当前位置:阳光沙滩 >Android > 查看文章

1. AsyncTask

线程:多线程。高版本(3.0以上包括)单线程排队执行,低版本(3.0以下),不排队,多线程执行。

在高版本上实现多线程的方案:使用executeOnExecutor里头,当然,这个方法要传入原来的参数已经一个线程池。

作用:提供在子线程中执行耗时操作,在主线程中更新UI

AsyncTask<参数1,参数2,参数3> task = new AsyncTask<参数1,参数2,参数3> ();

参数含义:

第一个参数针对的是doInBackground的参数,也就是执行参数

第二个参数的作用是针对onProgressUpdate的参数

第三个参数针对的是doInBackground的返回值,以及onPostExecute的参数

 

方法的详解:

2.doInBackground(Void….params参数1类型):耗时操作

执行线程:子线程中执行

执行时机:其次执行

参数含义(可变参数):执行参数,asyncTast.execute(参数1类型);

返回值:传给onPostExecute

 

 

3.onPreExecute():在我们执行耗时操作前的UI操作

执行线程:主线程中执行

执行时机:最后执行

 

 

4.onPostExecute(参数3类型):处理耗时操作的结果

执行线程:主线程中执行

执行时机:最后执行

参数含义:doInBackground返回的参数

 

 

5.onProgressUpdate(参数2类型):

执行线程:主线程中执行

执行时机:需要调用publishProgress方法更新进度UI

参数含义:参数2类型,也就是publishProgress方法的参数

调用形式:publishProgress(参数2类型);

本文链接:https://blog.sunofbeaches.com/archives/194 转载请注明出处.
如果喜欢:点此订阅本站
7K
为您推荐
各种观点