2012-07-26 35 views
0

我對android中的生命週期還是有點陌生​​。但是,在我的應用程序中,我有一個每十秒運行一次的計時器。我注意到,當屏幕旋轉時,應用程序會回到主屏幕並崩潰(可能與定時器有關)。有任何想法嗎?OnPause onResume中的計時器會發生什麼變化

+1

如果崩潰,它會在LogCat中產生紅色的日誌。如果您希望我們查看崩潰的原因,請發佈這些內容。請記住,方向更改會調用所有'onPause,onStop,onDestroy,onCreate,onStart,onResume'。 – Eric 2012-07-26 22:04:10

+0

你每10秒鐘做什麼? – Erol 2012-07-26 23:14:46

回答

0

in onPause您必須停止計時器。詳細閱讀您的logcat日誌。

+0

我想過這個,但是會有問題,因爲如果我在這麼短的時間內旋轉很多次,它會造成太多的計時器? – jimmyC 2012-07-26 22:30:35

+0

我建議你取消你的計時器,並創建一個新的計時器onResume。垃圾收集器應該爲您回收它們,一旦您將引用刪除到前一個定時器。 – dineth 2012-07-27 00:31:38

+0

我在想這個,但onResume發生在onStart之後。我是不是應該在onStart中創建一個新的定時器(當我第一次啓動應用程序時),然後在onResume中創建一個定時器(取而代之)。因爲如果我在onResume中放置一個,onStart將創建一個計時器,然後onResume也會創建一個(或者至少看起來如此)。在我們首次啓動應用程序的情況下,我們將始終有2個。 – jimmyC 2012-07-30 21:13:27

相關問題