全國- 「切換城市」 培訓家旗下培訓平臺
手機版
網站導航

學習Android開發有哪些技巧呢

2020.03.20

發布者:網上發布

??在Android中,線程分為主線程和子線程。主界面用于與用戶交互,進行UI的相關操作,而子線程則負責耗時操作。如果在主線程中進行耗時操作,就會使程序無法及時的響應。因此,耗時操作必須放在子線程中進行。為了方便你快速清晰地了解線程與安卓開發,本文將從以下幾個方面為你闡述
??1 主線程和子線程
??主線程是指進程所有用的線程,在Android中即指進行UI與用戶交互的線程就是主線程。因此在Android開發中,需要盡可能的把耗時操作,網絡請求訪問操作,數據庫讀取操作等放在子線程,以避免主線程長期處于占用狀態以降低用戶體驗。系統要求網絡訪問必須在子線程中進行,否則會拋出NetworkOnMainThreadException異常。
??2 線程形態
??Android中的線程形態有傳統的Thread,AsyncTask,HandlerThread和IntentService。
??AsyncTask封裝了Thread和Handler,必須在主線程進行調用,它可以在子線程中執行任務,然后將執行的結果傳遞給主線程并更新UI。但AsyncTask并不適合執行特別耗時的任務。
??AsyncTask是一個泛型類,提供了三個泛型參數:Params,Progress和Result。
??Params表示參數的類型
??Progress表示后臺任務的執行進度的類型
??Result表示后臺任務返回結果的類型
??AsyncTask的聲明:
??2.1.2 方法:
??AsyncTask提供了一些核心方法:
??onPreExecute在主線程中調用用來進行異步任務的準備操作。
??doInBackground(Params……params)在執行完onPreExecute后進行子線程任務時自動調用,Params表示異步任務的輸入參數。在方法中可以通過publishProgress更新任務的完成進度,同時在結束調用后會返回結果給onPostExecute方法。
??onProgressUpdate(Params……params)在主線程中用于顯示任務進行的進度,在publishProgress方法中被調用。
??onProgressExecute(Result result)在主線程中用戶獲取任務結束后回返的結果,即doInBackground的返回值。
??onCancelled在主線程中執行,當異步任務被取消后不會執行onProgressExecute方法而會執行onCancelled方法。

上一篇:幼兒時期學習英語的好處 下一篇:孩子在幼兒時期學習英語的優勢有哪些

推薦機構

熱門課程

本站展示的所有信息內容系由機構或個人用戶發布,可能存在發布者所發布的信息,并未獲得品牌所有人有效授權。本平臺會加強審核,但無法完全排除差錯或疏漏。鄭重聲明:本平臺僅為免費注冊用戶提供免費的信息發布渠道,但不對其發布信息的真實性、準確性和合法性負責,對此也不承擔任何法律責任。對于從本網站或本網站的任何有關服務所獲得的資訊、內容或廣告,您接受或信賴任何信息所產生之風險應自行承擔,本網對任何使用或提供本網站信息的商業活動及其風險不承擔任何責任。,如果侵犯,請及時通知我們,發送郵件至15610150293@126.com本網站將在第一時間及時刪除。

亚洲∧v久久久无码精品色欲_2019精品无码不卡_制服丝袜无码中文字幕在线_97精品国产自在现线免费观看

日韩欧美精品一本在线播放 | 日本午夜精品视频在线观看 | 亚洲综合色婷婷七月丁香 | 一区二区三区亚洲综合 | 日本私人免费网站在线观看 | 日韩2021亚洲天堂在线 |