2011-11-10 143 views
0

我試圖從另一個活動(Act1)開始一個活動(Act2),並且它不會像它應該那樣發生。Android活動沒有顯示

在調試器中,我可以看到,作爲被稱爲3次(!! ...),沒有錯誤顯示,或異常捕獲調用startActivity()方法的onCreate()ACT2的的結果,不幸的是所需的用戶界面不顯示。

爲了設法更好地瞭解問題出在哪裏,我運行表現出預期的正常行爲,在未來2個測試:

  1. ,當我修改ACT1開始ACT3(而不是ACT2,只是 理解如果Act1的問題),然後act3按預期顯示其UI。
  2. 當Act4啓動Act2時,它按預期運行,並在屏幕上顯示UI。

至於代碼,我開始的常見的方式活動:

Intent intent = new Intent(Act1.this, Act2.class); 
startActivity(intent); 

任何人都面臨這樣的事情嗎?

謝謝。

回答

0

您可能需要閱讀關於Activity lifecycle的文檔。

OnCreate只會在活動的每個生命週期中被調用一次。但是,有很多情況會導致您的活動被殺死並重新啓用。因此,onCreate會再次被調用。

爲了正確支持這一點,您可以將狀態信息保存在onSaveInstanceState中,並在您創建時所處的狀態包之後進行恢復。

+0

thanls爲快速響應。 –

+0

我希望它能幫助你。 –

+0

感謝您的快速響應。但我已經看到了生命週期,但是我並沒有解散和什麼原因導致我的活動在從不同的上下文中調用時(以及從當前上下文 - 有效地激活另一活動)運行正常 –