热99re久久精品国产99热|欧美乱强伦XxXXX高潮|久久久久久久毛片免费看|丁香六月久久婷婷开心

全國(guó)- 「切換城市」 培訓(xùn)家旗下培訓(xùn)平臺(tái)
手機(jī)版
網(wǎng)站導(dǎo)航

學(xué)習(xí)Android開(kāi)發(fā)有哪些技巧呢

2020.03.20

發(fā)布者:網(wǎng)上發(fā)布

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

上一篇:幼兒時(shí)期學(xué)習(xí)英語(yǔ)的好處 下一篇:孩子在幼兒時(shí)期學(xué)習(xí)英語(yǔ)的優(yōu)勢(shì)有哪些

推薦機(jī)構(gòu)

熱門(mén)課程

本站展示的所有信息內(nèi)容系由機(jī)構(gòu)或個(gè)人用戶(hù)發(fā)布,可能存在發(fā)布者所發(fā)布的信息,并未獲得品牌所有人有效授權(quán)。本平臺(tái)會(huì)加強(qiáng)審核,但無(wú)法完全排除差錯(cuò)或疏漏。鄭重聲明:本平臺(tái)僅為免費(fèi)注冊(cè)用戶(hù)提供免費(fèi)的信息發(fā)布渠道,但不對(duì)其發(fā)布信息的真實(shí)性、準(zhǔn)確性和合法性負(fù)責(zé),對(duì)此也不承擔(dān)任何法律責(zé)任。對(duì)于從本網(wǎng)站或本網(wǎng)站的任何有關(guān)服務(wù)所獲得的資訊、內(nèi)容或廣告,您接受或信賴(lài)任何信息所產(chǎn)生之風(fēng)險(xiǎn)應(yīng)自行承擔(dān),本網(wǎng)對(duì)任何使用或提供本網(wǎng)站信息的商業(yè)活動(dòng)及其風(fēng)險(xiǎn)不承擔(dān)任何責(zé)任。,如果侵犯,請(qǐng)及時(shí)通知我們,發(fā)送郵件至15610150293@126.com本網(wǎng)站將在第一時(shí)間及時(shí)刪除。