2013-02-12 88 views
1

我有一個應用程序。該流程 -
開機畫面--->主屏幕--->一覽畫面--->項目細目屏幕更改返回按鈕行爲 - Android

在我的應用我有按鈕功能上一覽畫面項目詳細信息屏幕

當我按下主頁按鈕項目細目屏幕它可以追溯到主屏幕。這是預期的行爲。
但是,當我按下主屏幕後退按鈕,它把我帶回到了項目細目屏幕這是我不想

我試圖殺死項目詳情屏幕使用完成(),但是然後活動堆棧中的最後一個活動是項目列表屏幕。
主屏幕上的後退按鈕現在將我帶到項目列表屏幕。
當用戶在主屏幕上時,有什麼方法可以清除活動堆棧嗎?任何在這方面的幫助將不勝感激。

回答

2

你應該更多的意圖標誌啓動您主屏幕活動:

// create intent 
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 
intent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP); 
startActivity(intent); 

這將清除活動堆疊到主屏幕活動。這個活動將被簡單地呈現,而不是重新創建。此外,這保證只有一個主屏幕活動可能是您想要的。

+0

+1。有效。 :) – Anukool 2013-02-12 14:12:12

+0

@Anukool好,我很高興:)乾杯! – andr 2013-02-12 14:13:05

1

使用意向flagFLAG_ACTIVITY_CLEAR_TOP清除棧:

Intent intent = new Intent(this, HomeActivity.class); 
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 
startActivity(intent); 

按下「Home鍵」時,您應調用此代碼。

+0

+1。感謝你的回答。 – Anukool 2013-02-12 14:12:36