遇到的问题 ------为什么要是红asyncTask
向服务器端发送一个http请求,服务器端返回给用户一些数据,然后将这些数据展示在ui当中
这时候就会出现一种现象:因为android访问服务器必须放在子线程当中,而ui的更新数据又必须放在主线程当中,所以当主线程展示数据的时候,遇到一些耗时操作 比如访问服务器,数据库查询等操作,主线程就会阻塞,用户就会看到ANR(程序未响应)。而AsyncTask很好的解决了这一类问题
AsyncTask的使用方法
创建一个类MyTask继承自AsyncTask
实现AsyncTask的doInBackground()方法
这个方法是必须要实现的,主要是用来编写异步任务主要代码,用于执行一些耗时操在执行过程中可以调用publishProgress()来更新进度信息
onProgressUpdate()当调用publishProgress()方法时,将进度信息展示到UI
onPreExecute()当执行execute()方法时首先会调用该方法,主要是对UI的一些信息做一些声明onPostExecute()当异步任务的操作结束时会调用该方法,用于更新UI信息execute()方法,该方法是用于开启异步任务的执行,必须在主线程当中开启。本文出自 “五小猪” 博客,请务必保留此出处http://wuxiaozhu.blog.51cto.com/7942143/1764480
android中的异步任务-----------AsyncTask的使用
原文地址:http://wuxiaozhu.blog.51cto.com/7942143/1764480