8
我有一項活動可以從其他幾個活動以及url過濾器意圖中啓動。如果活動堆棧爲空,則啓動主要活動
在此活動中,我使用操作欄中的主頁圖標作爲後退按鈕,使用戶回到上一個活動(而不是「主頁」操作)。現在我通過調用finish()函數來做到這一點。從應用程序內部工作時,這工作正常。
但是,如果通過url過濾器意圖啓動活動,我希望主圖標將用戶帶到主要活動。顯然,調用finish()會關閉活動。
所以我的問題是,有沒有辦法來檢查我的應用程序堆棧是否爲空,然後啓動主要活性,如果屬實?還是我用這種錯誤的方式來攻擊?
看起來像一個很好的解決方案,但遺憾的是它不起作用。 isTaskRoot()在兩種情況下均返回false。我想我不需要啓動一項新任務(即應用程序已經在後臺運行了嗎?)。我無法圍繞活動/任務處理打包頭。 – SveinT 2012-07-20 11:53:40
編輯我的答案,添加另一種可以使用的方法,因爲您的活動顯然已啓動到現有任務中。 – 2012-07-20 12:02:31
這當然應該起作用,但我會假設存在一個更清潔的解決方案? Gmail應用和其他人實施了類似的行爲。無論哪種方式,它都必須這樣做。謝謝! – SveinT 2012-07-20 12:09:21