android中的返回鍵與Activity
來源:程序員人生 發(fā)布時間:2014-11-18 09:06:08 閱讀次數(shù):2108次
我在做利用時遇到1個問題,就是在啟動主頁面時需要預(yù)先加載1些數(shù)據(jù),我是在1個加載頁中處理完這些數(shù)據(jù)然后再轉(zhuǎn)到主頁面,但當(dāng)我在主頁面中按返回鍵時,系統(tǒng)會返回加載頁面。我不希望加載頁在使用完以后還被保存在任務(wù)中。
Android的官方文檔中這樣描寫的返回棧、任務(wù)和activity的默許關(guān)系:
1:當(dāng)從Activity A中啟動Activity B時,Activity A停止,但是保存了它的狀態(tài)(比如,轉(zhuǎn)動位置和表單中的文字)。如果當(dāng)用戶在Activity B中按了返回鍵,Activity A會恢復(fù)之前的狀態(tài);
2:當(dāng)用戶按了Home鍵時,當(dāng)前的activity停止,并且它的任務(wù)被放到后臺。系統(tǒng)會保存任務(wù)中每個activity的狀態(tài),如果用戶再次啟動app,任務(wù)會再次回到前臺并且展現(xiàn)棧頂?shù)腶ctivity;
3:如果用戶點擊BACK鍵,當(dāng)前的activity會從棧中彈出并且被燒毀。如果activity被燒毀,則系統(tǒng)不會保存它的狀態(tài);
4:Activity可以被實例化很屢次,即便是從不同的任務(wù)中。
固然你可以改變它默許的狀態(tài),在manifest文件或在啟動Activity中的intent中加入1個標(biāo)志。
intent.setFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);//新啟動的activity將不會被保存在歷史棧中
再介紹1個經(jīng)常使用的標(biāo)志:
FLAG_ACTIVITY_NEW_TASK:新啟動的activity會在這個歷史棧中開啟1個新的任務(wù)
大家可以在文檔中Intent類介紹里找自己需要的標(biāo)志。
生活不易,碼農(nóng)辛苦
如果您覺得本網(wǎng)站對您的學(xué)習(xí)有所幫助,可以手機掃描二維碼進行捐贈