2013-03-02 73 views
0

我正在嘗試將保存對話框添加到Activity檢測活動何時更改

如果你按回來,我已經捕獲它並添加了一個保存對話框。

由於我有一個通用的操作欄,有沒有一種方法來捕獲活動事件的變化,而不用將其硬編碼到活動變化本身中?

我谷歌搜索了一下,發現沒有運氣,onDestroyonStop似乎並沒有做我想做的。

回答

2

一個類無論原因如何),請覆蓋onPause(請參閱http://developer.android.com/reference/android/app/Activity.html)。另外,作爲一個用戶,我想要這種行爲 - 如果我離開一個活動而沒有按下後退按鈕或退出,我希望它會靜靜地處理所有事情 - 即你使用onPause(或替代方案)來存儲事物,以便在活動恢復時它擁有我離開它時的一切。

+0

嗨@Neil Townsend,所以你說的是,對於我來說,在活動改變時自動保存數據而不是提示用戶可能更好?但是,我可以在重新按下對話框的時候放置一個對話框嗎? – DormeoES 2013-03-02 22:54:46

+0

@DormeoES這是預期的行爲,是的。 – 2013-03-03 09:09:14

+0

非常感謝你的答案。 – DormeoES 2013-03-03 10:53:27

1

你可以這樣做的一種方法是編寫一個繼承自Activity並實現該類中的行爲的類。然後簡單地繼承這個類爲你所有的活動。

你可以寫它實現了節約行爲

class SaveActivity extends Activity { 

    //... 

    @Override 
    public void onBackPressed() { 
     // common behaviour you want 
    } 
} 

然後在你的活動,如果你想知道無論何時停止活動,成爲可見的(你可以做到這一點

class MyActivity extends SaveActivity { 

    // code for this activity 

} 
+0

這並不是我一直在尋找的東西,只有在一個Activity中需要回壓,所以使其通用將是毫無意義的。 – DormeoES 2013-03-02 22:56:16

1

onPause()可能是你應該看的。當任何活動進入此活動的頂部時,它會被調用。