亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 系統 > Android > 正文

android教程之使用asynctask在后臺運行耗時任務

2020-04-11 11:55:01
字體:
來源:轉載
供稿:網友

, Android中實現了默認的進度提示對話框,即ProgressDialog,通過實例化和一些簡單設置,就可以使用了。

復制代碼 代碼如下:

private class DownloadDBTask extends AsyncTask<String, Integer, String> {  
        // 可變長的輸入參數,與AsyncTask.exucute()對應  
        ProgressDialog pdialog;  
        public DownloadDBTask(Context context){  
            pdialog = new ProgressDialog(context, 0);     
            pdialog.setButton("取消", new DialogInterface.OnClickListener() {  
             public void onClick(DialogInterface dialog, int i) {  
              dialog.cancel();  
             }  
            });  
            pdialog.setOnCancelListener(new DialogInterface.OnCancelListener() {  
             public void onCancel(DialogInterface dialog) {  
              finish();  
             }  
            });
            pdialog.setTitle("第一次使用,正在下載數據...");
            pdialog.setCancelable(true);  
            pdialog.setMax(100);  
            pdialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);  
            pdialog.show();  
        }

        @Override 
        protected String doInBackground(String... params) {  
            try{
                    if (DataOper.GetTopNearestPOIs(1, mDBHelper).size()==0)
                            DataOper.GetAllPtsFromNet(mDBHelper, pdialog); // 從網絡上下載數據記錄的功能
            } catch(Exception e) {  
                    e.printStackTrace();
            }  
            return null;
        }

        @Override 
        protected void onCancelled() {  
            super.onCancelled();  
        }  

        @Override 
        protected void onPostExecute(String result) {  
            pdialog.dismiss();   
        }  

        @Override 
        protected void onPreExecute() {
        }  

        @Override 
        protected void onProgressUpdate(Integer... values) {   
        } 
     }  

對于寫好的異步任務類,調用方法為:

復制代碼 代碼如下:

DownloadDBTask task = new DownloadDBTask(context);  
task.execute("");

注意AsyncTask為泛型類,具有三個泛型參數,此處設計為 <String, Integer, String>,對應于運行參數、進度值類型和返回參數。
從sdk的文檔中看到,當一個AsyncTask運行的過程中,經歷了4個步驟:

1、onPreExecute(), 在excute調用后立即在ui線程中執行。 This step is normally used to setup the task, for instance by showing a progress bar in the user interface.
2、doInBackground, 當 onPreExecute() 完成后, 立即在后臺線程中運行. This step is used to perform background computation that can take a long time. The parameters of the asynchronous task are passed to this step. The result of the computation must be returned by this step and will be passed back to the last step. This step can also use publishProgress to publish one or more units of progress. These values are published on the UI thread, in the onProgressUpdate step.
3、onProgressUpdate, 在調用publishProgress后,在ui線程中運行. The timing of the execution is undefined. This method is used to display any form of progress in the user interface while the background computation is still executing. For instance, it can be used to animate a progress bar or show logs in a text field.
4、onPostExecute, 后臺運算完成時在ui線程中調用. The result of the background computation is passed to this step as a parameter.

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久影院资源网| 成人精品福利视频| 国产一区二区三区网站| 国产女精品视频网站免费| 色综合久久精品亚洲国产| 最近2019年中文视频免费在线观看| 国产美女精品免费电影| 日韩欧美aaa| 国产日产亚洲精品| 欧美专区中文字幕| 久热国产精品视频| 午夜精品久久久久久久99热浪潮| 91在线精品视频| 这里只有精品在线播放| 91色p视频在线| 热99在线视频| 国产又爽又黄的激情精品视频| 中文字幕在线精品| 日韩黄在线观看| 精品一区二区三区四区| 黑人巨大精品欧美一区二区| 亚洲色图第三页| 色综合天天综合网国产成人网| 高清欧美性猛交| 欧美视频不卡中文| 欧美激情喷水视频| 久久天天躁狠狠躁夜夜躁2014| 亚洲午夜精品视频| 操91在线视频| 久久久免费高清电视剧观看| 91sa在线看| 成人国产精品免费视频| 夜夜嗨av色综合久久久综合网| 亚洲国产中文字幕久久网| 国产精品白嫩美女在线观看| 欧美成人中文字幕| 久久久中精品2020中文| 亚洲精品久久久久国产| 亚洲色图17p| 九色精品免费永久在线| 欧美精品videos性欧美| 欧美日韩在线免费观看| 欧美国产亚洲精品久久久8v| 国内精品400部情侣激情| 国产精品视频午夜| 在线成人激情黄色| 亚洲爱爱爱爱爱| 亚洲人成在线观看| 日韩在线激情视频| 69久久夜色精品国产69| 中文字幕日韩免费视频| 亚洲欧美日韩一区二区三区在线| 成人精品福利视频| 欧美视频在线观看免费| 亚洲精品小视频| 欧美国产极速在线| 欧美成人免费播放| 国产精品久久久久久五月尺| 国产精品入口免费视频一| 精品人伦一区二区三区蜜桃网站| 亚洲电影天堂av| 亚洲欧美日韩一区二区三区在线| 亚洲国产精品高清久久久| 亚洲国产精品免费| 久久99久久99精品免观看粉嫩| 伊人一区二区三区久久精品| 国产亚洲综合久久| 久久国产精品久久久久久久久久| 欧美日韩福利视频| 色偷偷av亚洲男人的天堂| 92裸体在线视频网站| 成人精品网站在线观看| 久久久之久亚州精品露出| 日韩精品中文在线观看| 国产精品亚洲激情| 2020国产精品视频| 亚洲自拍偷拍视频| 久久夜色精品亚洲噜噜国产mv| 欧美成人精品一区二区| 免费97视频在线精品国自产拍| 最近2019好看的中文字幕免费| 亚洲国内高清视频| 欧美日韩国产成人在线观看| 色青青草原桃花久久综合| 性欧美长视频免费观看不卡| 久久精品国产2020观看福利| 国产亚洲精品久久久久动| 日韩中文字幕精品| 欧美国产欧美亚洲国产日韩mv天天看完整| www国产亚洲精品久久网站| 亚洲国产精品系列| 日本久久中文字幕| 26uuu久久噜噜噜噜| 亚洲天堂2020| 国产精品999| 日韩精品视频免费| 日韩欧美在线播放| 日韩成人在线免费观看| 人人澡人人澡人人看欧美| 国产一区二区成人| 亚洲成人网av| 日韩av网站在线| yw.139尤物在线精品视频| 成人淫片在线看| 日韩在线观看免费高清完整版| 日韩美女在线观看| 久久精品国产欧美亚洲人人爽| 在线激情影院一区| 日韩成人在线视频观看| 日韩视频免费中文字幕| 97在线看免费观看视频在线观看| 日韩精品在线观看一区二区| 精品日本美女福利在线观看| 欧美高清视频在线播放| 亚洲日韩中文字幕在线播放| 国产专区精品视频| 国产精品三级网站| 92福利视频午夜1000合集在线观看| 亚洲一区二区日本| 欧美老女人在线视频| 久国内精品在线| 亚洲色图校园春色| 日韩精品极品在线观看播放免费视频| 亚洲男人天堂古典| 亚洲午夜久久久久久久| 日韩极品精品视频免费观看| 亚洲热线99精品视频| 亚洲第一区第一页| 国内偷自视频区视频综合| 久久亚洲精品毛片| www.99久久热国产日韩欧美.com| 国产精品丝袜一区二区三区| 亚洲天堂视频在线观看| 欧美性精品220| 亚洲综合在线小说| 国产精品视频精品视频| 亚洲va久久久噜噜噜久久天堂| 国产精品久久久一区| 九九久久综合网站| 98午夜经典影视| 亚洲精品国产欧美| 亚洲网站在线看| 91青草视频久久| 91精品视频在线看| 国产日韩av在线| 国产成人精品a视频一区www| 亚洲欧洲免费视频| 欧美日韩亚洲精品一区二区三区| 亚洲精品suv精品一区二区| 成人网欧美在线视频| 日日摸夜夜添一区| 国产va免费精品高清在线| 91久久在线视频| 国产精品成人久久久久| 久久久日本电影| 国产区亚洲区欧美区| 国产免费观看久久黄| 国产精品96久久久久久又黄又硬| 热99在线视频| 992tv在线成人免费观看| 国产一区二区在线免费视频| 中文字幕亚洲一区| 成人天堂噜噜噜| 一级做a爰片久久毛片美女图片|