2013-01-02 30 views
0

在定位更改上,不幸的是Android中丟失了很多信息,因此必須重新構建。我有一個計算器類型的應用程序,它使用用戶輸入數據中存儲在佈局中的信息進行計算,並根據方向更改Android爲我恢復佈局數據。問題是,在onResume中,我調用重新計算數據的方法來重置顯示,因爲這會在方向更改中丟失。但是,似乎在Android恢復數據之前調用了onResume。我該怎麼辦?onResume之後調用的方法?

+0

爲什麼不將數據保存在一個Bundle中,然後在再次調用onCreate()時讀回它? –

+0

我想我可以做到這一點,雖然簡單的方法調用更容易。 – Emrys90

+0

您是否只是在繪製視圖後想要回調? – Sam

回答

0

問題是,android不會爲您恢復數據。 旋轉後,您的活動重新創建。

你應該保存在你的onSaveInstanceState數據(),它從 onRestoreInstanceState

恢復據商務部,得到的onResume後onRestoreInstanceState正確調用。

+0

它們存儲與視圖相關的任何數據,例如當前輸入的EditText值,並在重新創建活動後將其恢復。 – Emrys90

+0

他們不。這就是爲什麼你需要使用rest/onSave instancestate方法的原因之一。 – fedepaol

+0

我向你保證,他們這樣做。我沒有方法設置保存/恢復我的數據和方向更改來自Spinners或EditTexts等的任何用戶輸入數據仍然存在。 – Emrys90

相關問題