這幾天一直都在搗鼓android的知識(shí)點(diǎn),興趣班的老師,講課太過(guò)深?yuàn)W,天(想到什么就見(jiàn)什么,后后面完全不想聽(tīng)),最后自己找資料總結(jié)了在Android學(xué)習(xí)中很重要的一個(gè)組件Activity,那就開(kāi)始吧!
第一:掌握Activity的四種狀態(tài)及什么時(shí)候觸發(fā)
首先我們要知道什么是Activity,簡(jiǎn)單來(lái)說(shuō)Activity其實(shí)就是一個(gè)屏幕的顯示頁(yè)面。(簡(jiǎn)單的闡述)
我們知道Activity是由Activity棧進(jìn)管理,當(dāng)來(lái)到一個(gè)新的Activity后,此Activity將被加入到Activity棧頂,之前的Activity位于此Activity底部。
Acitivity一般意義上有四種狀態(tài):
1、Running狀態(tài): 一個(gè)新的Activity啟動(dòng)入棧后,它在屏幕的最前端,處于棧的最頂端,此時(shí)它處于可見(jiàn)并可和用戶(hù)交互的激活狀態(tài),Android試圖盡最大可能保持它活動(dòng)狀態(tài),殺死其它Activity來(lái)確保當(dāng)前活動(dòng)Activity有足夠的資源可使用。當(dāng)另外一個(gè)Activity被激活,這個(gè)將會(huì)被暫停。
2、Paused狀態(tài):當(dāng)Activity處于此狀態(tài)時(shí),此時(shí)它依然與窗口管理器保持連接,系統(tǒng)繼續(xù)維護(hù)其內(nèi)部狀態(tài),它仍然可見(jiàn),但它已經(jīng)失去了焦點(diǎn),故不可與用戶(hù)交互。
3、Stopped狀態(tài): 當(dāng)Activity 不可見(jiàn)時(shí),Activity處于Stopped狀態(tài)。當(dāng)Activity處于此狀態(tài)時(shí),一定要保存當(dāng)前數(shù)據(jù)和當(dāng)前的UI狀態(tài),否則一旦Activity退出或關(guān)閉時(shí),當(dāng)前的數(shù)據(jù)和UI狀態(tài)就丟失了
4、Killed狀態(tài): Activity被殺掉以后或者被啟動(dòng)以前,處于Killed狀態(tài)。這是Activity已從Activity堆棧中移除,需要重新啟動(dòng)才可以顯示和使用。
圖1
延伸閱讀
- ssh框架 2016-09-30
- 阿里移動(dòng)安全 [無(wú)線(xiàn)安全]玩轉(zhuǎn)無(wú)線(xiàn)電——不安全的藍(lán)牙鎖 2017-07-26
- 消息隊(duì)列NetMQ 原理分析4-Socket、Session、Option和Pipe 2024-03-26
- Selective Search for Object Recognition 論文筆記【圖片目標(biāo)分割】 2017-07-26
- 詞向量-LRWE模型-更好地識(shí)別反義詞同義詞 2017-07-26
- 從棧不平衡問(wèn)題 理解 calling convention 2017-07-26
- php imagemagick 處理 圖片剪切、壓縮、合并、插入文本、背景色透明 2017-07-26
- Swift實(shí)現(xiàn)JSON轉(zhuǎn)Model - HandyJSON使用講解 2017-07-26
- 阿里移動(dòng)安全 Android端惡意鎖屏勒索應(yīng)用分析 2017-07-26
- 集合結(jié)合數(shù)據(jù)結(jié)構(gòu)來(lái)看看(二) 2017-07-26