遇到的问题 ------为什么要是红asyncTask
向服务器端发送一个http请求,服务器端返回给用户一些数据,然后将这些数据展示在ui当中
这时候就会出现一种现象:因为android访问服务器必须放在子线程当中,而ui的更新数据又必须放在主线程当中,所以当主线程展示数据的时候,遇到一些耗时操作 比如访问服务器,数据库查询等操作,主线程就会阻塞,用户就会看到ANR(程序未响应)。而AsyncTask很好的解决了这一类问题
AsyncTask的使用方法
创建一个类MyTask继承自AsyncTask
实现AsyncTask的doInBackground()方法
这个方法是必须要实现的,主要是用来编写异步任务主要代码,用于执行一些耗时操在执行过程中可以调用publishProgress()来更新进度信息
onProgressUpdate()当调用publishProgress()方法时,将进度信息展示到UI
onPreExecute()当执行execute()方法时首先会调用该方法,主要是对UI的一些信息做一些声明onPostExecute()当异步任务的操作结束时会调用该方法,用于更新UI信息execute()方法,该方法是用于开启异步任务的执行,必须在主线程当中开启。免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。