2012-03-02 71 views
2

我的應用程序打開的內心活動有三個活動。活性A呼叫活動B和活動B調用活動C.從通知欄在Android的

返回鍵將導航堆棧向後C-> B-> A。

當我從通知欄啓動應用程序時,我想將用戶發送給C但希望保持上述導航模式,即按回應鍵應該打開活動B並再次按下回車鍵應該打開活動A.

如何去怎樣處理這個

+0

的Android ENV支持這種行爲的「開箱即用」 - 沒有必要實施任何東西。 – alfasin 2012-03-02 05:46:36

+0

遺憾可能是這個問題不明確。在正常情況下,活動A啓動B和B啓動C,我明白它的作品。但是從通知欄中點擊通知時,我希望用戶直接進入活動C.但我仍然希望按下後退鍵以打開活動B等。如果我沒有創建或開始活動A或B,這將如何工作? – rOrlig 2012-03-02 05:52:59

+1

意圖是答案;) – noob 2012-03-02 06:01:18

回答

2

任何想法,只是需要override back key按在所有活動..

onBackPressed() 
{ 
// make intent and call previous activity. 
// and finish this. 
} 
1

擴展Soni的答案。你需要把下面的代碼在活動類

class MyActivity extends Activity{ 
    public void onCreate(Bundle bundle){ 
     //onCreate stuff 
    } 
    public void onBackPressed(){ 
     Intent backIntent=new Intent(this,PrevActivity.class); 
     startActivity(backIntent); 
    } 
} 

其中PrevActivity.class是Activity類需要在按下返回鍵啓動的名稱。你需要把這些代碼放到每個活動中,放到他們以前的課上。因此,如果流量是A> B> C,則活動B具有放的A.class在意向和活動C具有把B.class。

+0

是的,這是行得通的。我只需要額外的標記,例如FLAG_ACTIVITY_CLEAR_TOP FLAG_ACTIVITY_SINGLE_TOP,以確保它們只是父活動的一個實例。 – rOrlig 2012-03-02 15:46:58