2012-10-17 58 views
1

我在我的主類中有一個方法,它從互聯網獲取一些數據。事情是,在完成所有事情之後,如果通過移動設備來改變屏幕方向,則所有事情都會重新開始(在顯示加載屏幕時提取數據)。是否有某處我可以放我的方法,以便如果我的設備的屏幕方向發生變化,它不會抹去直到那一刻之前所做的所有事情?謝謝。安卓屏幕方向衝突

+0

[處理運行時更改(http://developer.android.com/guide/topics/resources/runtime-changes.html) – kcoppock

+0

如果你把它作爲一個答案,我會選擇它作爲正確的 – Teo

回答

0

您可以使用單例類來存儲數據。 如果你更喜歡簡單的方式,你也可以把你的數據作爲靜態的,所以方向改變不會把它們扔掉。

0

我認爲你的活動再次被重新創建。在這種情況下,它會再次加載。

1)。您可以通過覆蓋 public void onConfigurationChanged(Configuration newConfig)

,並在清單文件的活動聲明中加入以下行 android:configChanges="orientation|screenSize|keyboardHidden"

2)手柄的方向變化。正如Aerilys在上面的答案中所說的,您可以使用單例類來存儲數據。在顯示加載屏幕之前,請檢查單個物體是否有數據。如果是,那麼跳過顯示你的加載屏幕

1

發生在你身上的是每次你旋轉你的活動重新創建,根據android良好的做法,你應該處理你的活動被重新創建,因爲android可能會摧毀你的活動在任何時候如果設備資源不足。看看保存你的活動狀態,以及如何恢復它和鏈接。

Example using onSaveInstanceState()