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

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

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

    一個很笨的方法是: spa

  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);  

    PS: 若是intent對象包含FLAG_ACTIVITY_CLEAR_TOP 標記,當目標task中已存在與接收該intent對象的 activity類型相同的activity實例存在時,全部位於該activity對象上面的activity將被清空,這樣接收該intent的 activity就位於棧頂,能夠響應到來的intent對象。若是目標activity的運行模式爲standard(默認),則目標activtiy也會被清空。由於當運行模式爲standard時,總會建立新的activity對象來接收到來的intent對象。 開發

相關文章
相關標籤/搜索