掌握活動的生命周期對任何Android開發(fā)者來說都非常重要,Android中的活動是可以層疊的,我們每啟動一個洗的活動,就會覆蓋在原活動之上,然后點擊Back鍵會銷毀最上面的活動,下面的一個活動就會重新顯示出來。
其實Android是使用任務(wù)(Task)來管理活動的,一個任務(wù)就是一組存放在棧里的活動的集合,這個棧也被稱作返回棧(Back Task),棧是一種后進先出的數(shù)據(jù)結(jié)構(gòu),在默認(rèn)情況下,每當(dāng)我們啟動了一個新的活動,他會在返回棧中入棧,并處于棧頂位置,而每當(dāng)我們按下Back鍵或者調(diào)用finish()方法去銷毀一個活動時,處于棧頂?shù)幕顒泳蜁鰲?,這時前一個入棧的活動就會重新處于棧頂?shù)奈恢?,系統(tǒng)總是會顯示處于棧頂?shù)幕顒咏o用戶
通過示例圖看返回棧是如何管理活動入棧出棧操作的:
活動狀態(tài)