關閉/完成一項活動並仍然希望通過,onStop
和onDestroy
的Android方式是什麼?如何在經歷生命週期破壞的同時關閉一項活動?
我知道Activity.finish()
,但這隻會保證不打電話onDestroy()
不是其他兩個。基於android文檔的原因,數據庫訪問應該在onStop()
中完成,因此它不會減慢用戶的速度,這是我的意圖,將所有「保存」保留到onStop()
,但是,我只注意到該函數不是所謂finish()
被稱爲...
所以......這種情況下的解決方案是什麼?我的意思是,我可以創建一個boolean
變量,但有沒有更復雜的方法?甚至另一種結束活動的方式,例如調用onDestory()
,是不正確的做法?
編輯
對不起,我misstyped那部分,我的意思是說保存到數據庫中onStop()
,而不是在onDestroy()
。
雖然在onPause()方法的onStop()調用之前,您應該 使用的onStop()來執行更大,更多的CPU關機 操作,比如到數據庫中寫入信息。
真對不起,我想念類型的東西,我編輯的問題,請再看一遍,編輯部分足以看到我的錯誤 – LuckyMe 2013-05-11 10:46:45
你剩下的就是這兩個選項,它實際上取決於你的數據庫代碼有多慢,並且每當重要時總是保存數據(因爲如果設備內存不足,您的活動將錯過onStop調用)。如果只保存幾行,我會去onPause()以避免用戶失去他的工作。 – Trax 2013-05-11 10:50:41
好吧,但是如果我想通過對話框提醒終止活動,我可以強制它通過'onStop()'嗎?因爲'finish()'不僅僅通過'onStop()'onDestroy()'。 – LuckyMe 2013-05-11 10:54:19