2017-08-03 46 views
0

這是我如何啓動我的活動:當我從主發起一項活動,主要的onCreate()被調用,當啓動的活動結束後的onDestroy()被調用

Intent intent = new Intent(Quotr.this, AddQuote.class); 
startActivityForResult(intent, ADD_QUOTE_REQUEST); 

這活動一起finish()

通話結束,但我已經與我的onCreate()onDestroy()方法的主要活動(在Quotr.class定義)是被調用的時候,我不希望他們的問題。我在這兩種方法中添加了對Log.v()的調用,以查看正在調用的內容,以及奇怪的是何時啓動活動,調用主活動的onCreate()以及何時完成新活動,主要活動的onDestroy()方法被調用。

這導致了很多問題,我甚至不知道如何在這個時候解決它,因爲我主要活動的onDestroy中的所有清理(我只希望在活動實際重新創建時運行,而不是每次這個新活動啓動時)在該活動仍在使用時被調用。

奇怪的是,這隻發生在這個特定的活動。據我所知,我用完全相同的方式調用並完成了所有其他活動意圖,但它們並不像這個AddQuote.class那樣干擾主活動的生命週期。

對於我現在可以檢查的東西,我真的很茫然。我檢查了清單中的任何錯誤,我檢查瞭解活動生命週期,但這實際上沒有意義。

回答

0

哦,我的上帝,所以我是一個巨大的白癡。

我正在開發一款應用程序,這款應用程序已經在一年半的時間裏慢慢建成,這是我第一次嘗試應用程序。出於某種原因,對於我在應用程序中開展的第一項新活動(我遇到問題之一),我擴展了主要活動而不是AppCompat活動。所以我對super.onCreate()和super.onDestroy()的調用被稱爲主要活動,因爲這是超類。

無論如何,我會留下這個機會,以免有人犯這個錯誤。希望它可以幫助某人。

相關問題