【19】AsyncTask

一、什么是AsyncTask?

英文直译过来是异步任务,是android中专门用来处理耗时操作的一个帮助类。

二、为什么要使用AsyncTask?

这个类作用其实跟handler类似,但是封装好了操作前,操作中,操作后的方法,用起来比较方便。

三、如何使用?

首先需要新建一个类来继承AsyncTask类,实现其中的几个重要方法。

class MyAsyncTask extends AsyncTask {

        @Override
        protected String doInBackground(String... strings) {
             //此处处理耗时操作,传入可变长String数组,传出String参数
             //此方法可传递Integer参数给onProgressUpdate ()方法
             publishProgress(progress);
        }
        @Override
        protected void onPreExecute() {
            super.onPreExecute();
            //此处处理耗时操作前的准备工作
        }

        @Override
        protected void onPostExecute(String s) {
            super.onPostExecute(s);
            //此处处理耗时操作后的界面更新或提示,传入前面的String参数
        }

        @Override
        protected void onProgressUpdate(Integer... values) {
            super.onProgressUpdate(values);
            //此处处理操作中的界面更新或提示,接受前面传入的Integer参数
        }
    }

其中三个参数分别为,传入参数,操作中传递参数,操作后传出参数。

实现方法后可使用

new MyAsyncTask().excute(url);

调用该方法

你可能感兴趣的:(【19】AsyncTask)