活動數據庫
快速查看網絡
· 一個活動提供了應用程序中一個屏幕的用戶界面函數
· 活動能夠移動到背景,而後能夠經過存儲的狀態恢復它們佈局
在這份文件中:spa
1. 建立活動對象
實現用戶界面教程
在清單中申明活動生命週期
2. 啓動活動隊列
以返回結果的形式啓動活動ci
3. 管理活動生命週期
關鍵類
1. 活動
另請參閱
2. 任務和返回堆棧
活動是提供這樣一個屏幕的應用程序組件,用戶經過與這個屏幕交互能夠完成一些事情,如撥打電話,拍照,發送電子郵件,或查看地圖。每一個活動有個能夠繪製它的用戶界面的窗口。一般窗口填滿整個屏幕,可是也能夠比屏幕小,懸浮在其餘的窗口之上。
應用程序一般包含多個活動,這些活動鬆散的結合。一般應用程序中的一個活動被指定爲「主」活動,這個主活動將在首次啓動應用程序時顯示給用戶。每一項活動能夠啓動另外一個活動,以執行不一樣的操做。每當一個新的活動開始,以前的活動將會中止,可是系統將以前的活動保留在堆棧中(即所謂的「back stack」)。當開啓一個新的活動,這個活動被壓入這個回棧中而且得到用戶焦點。回棧遵照基本的「後進先出」的隊列機制,這樣,當用戶在當前的活動中完成了動做以後,而且點擊了返回鍵,當前的活動就被彈出回棧(銷燬),而後恢復以前的活動。(回棧在任務和返回堆棧文件中有更詳細的討論。)
當一個活動因爲一個新的活動的開啓而關閉,這個狀態的改變是經過活動的生命花週期回調函數發佈的。根據狀態的改變活動可能接受到幾個回調函數,例如:系統是否建立它,中止它,恢復它,銷燬它。在每一個回調中你都有機會執行當這種狀態變化的合適的操做。例如:當活動中止時,應該釋聽任何大的對象,如網絡或數據庫鏈接。當恢復活動時,你能夠從新得到必要的資源和恢復被中斷的行動。這些狀態的轉換都是活動生命週期的部分。
本文件的其他部分將討論如何創建和使用活動,包括活動的生命週期是如何工做的一個完整的討論,因此你能夠妥善管理的各類活動狀態之間的轉換。
建立活動
要建立一個活動,你必須建立一個Activity(或它的子類)的子類。在新的子類中,你須要實現這些回調函數—活動在它的生命週期中在這許多的狀態中轉換時系統調用的回調函數,好比在活動被建立,中止,恢復,銷燬。其中最主要的兩個回調函數是:
你須要實現回調方法,系統調用時,其生命週期的各類狀態,如正在建立活動時,活動轉換中止,恢復,或銷燬。兩個最重要的回調方法:
您必須實現此方法。當你建立活動時系統調用它。在實現中,你應該初始化您的活動的重要組成部分。最重要的是,你必須調用setContentView()定義活動的用戶界面的佈局。
用戶一有跡象離開活動(雖然它並不老是意味着被銷燬活動)系統就調用這個函數。在這兒一般你應該提交當前用戶會話的任何變化(由於用戶可能不回來)。
還有一些其餘的生命週期回調方法,你應該使用以提供活動間流暢的用戶體驗並處理使你的活動中止甚至銷燬的突發的中斷。稍後將在管理活動生命週期相關部分討論全部的生命週期回調方法。