Android中打開多個Activity,點擊返回到第一個Activity

問題:Android順序打開多個Activity,如何返回到第一個Activity(一般爲首頁)? 

情形:如 A 打開 B, B 打開 C, C 打開 D, 然後如果從 D 一步返回到 A,並清楚掉 B、C、D呢?

一個很笨的方法是:

  1. Intent intent= new Intent(this, 首頁Activity.class);  
  2. startActivity(intent);  

Android開發過程中肯定會經常遇到要返回首頁的情形,google當然想到了這一點,實現起來很簡單,只要在打開的最後一個Activity中 設置Flag就可以回到第一個Activity,代碼如下:

  1. Intent intent= new Intent(this, FirstActivity.class);  
  2. intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);  
  3. startActivity(intent);
如果intent對象包含FLAG_ACTIVITY_CLEAR_TOP 標記,當目標task中已存在與接收該intent對象的 activity類型相同的activity實例存在時,所有位於該activity對象上面的activity將被清空,這樣接收該intent的 activity就位於棧頂,可以響應到來的intent對象。如果目標activity的運行模式爲standard(默認),則目標activtiy也會被清空。因爲當運行模式爲standard時,總會創建新的activity對象來接收到來的intent對象。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章