Android ApiDemo示例解讀7:Activity->Forwarding
Android應用可以包含,多個Activity, 某個Activity可以啟動另外的Activity。這些Activity采用棧結構來管理,新打開的Activity疊放在當前的Activity之 上,當前的Activity停止運行。當一個Activity停止運行時,Android系統保留其停止前的狀態,當用戶按下“Back”按鍵時,棧最上 的Activity從棧頂退棧,之前的Activity移到棧頂,顯示在屏幕上:
有些時候,當一個Activity啟動新的Activity后,不希望把當前Activity保留在Activity棧中,比如在使用Activity實現一個Confirm Dialog時,當用戶確認后啟動新的Activity,在新Activity顯示時按“Back”后退時不希望在顯示Confirm Dialog。
示例Fowarding 使用Finish()在啟動新Activity同時結束當前Activity。
- Intent intent = new Intent();
- intent.setClass(Forwarding.this, ForwardTarget.class);
- startActivity(intent);
- finish();
Finish結束Forwarding Activity,之后按“Back”,則直接退到ApiDemo->Activity 示例列表,而不是Forwarding。