2011-03-10 56 views
0

我實現了在「嚮導式」的一些活動,也就是,有一個下一個和以前的底部按鈕使用它們之間進行切換:嚮導式的活動和的onSaveInstanceState

Intent NextActivityIntent = new Intent(v.getContext(), FormN.class); 
startActivity(NextActivityIntent); 

這個問題我面對的是,當我回到一個活動時,之前完成的領域是空的。

問題是,有沒有更簡單的方法來保持顯示字段值,而不是攔截onSaveInstanceState和onRestoreInstanceState事件並手動保存/恢復每個字段?

+0

不完成當前活動 – ingsaurabh 2011-03-10 13:31:10

回答

0

使用startActivityForResult而不是startActivity。之前的活動及其狀態將保留在堆棧中。要從當前活動返回,請使用finish()

理想情況下,您應該針對onSaveInstanceState進行編碼,以防手機重新定向。如果您鎖定手機方向,則無關緊要。

+0

感謝您的回覆,但我不認爲這適用於類似嚮導的一組活動,因爲我必須能夠從第三個屏幕回到第一個維護數據在之間。如果我回到第三個時候完成它們,它將是空的。 – xain 2011-03-10 15:22:10

+0

在這種情況下,您甚至不必完成任何活動。您可以使用Intent標誌FLAG_ACTIVITY_REORDER_TO_FRONT重新排序您的活動。 http://developer.android.com/reference/android/content/Intent.html#FLAG_ACTIVITY_REORDER_TO_FRONT。在你的例子中,如果它已經在運行,這將帶回第三個活動。你將不得不查看實現這個的確切細節。我認爲你可以使用ViewFlipper而不是創建新的活動。會簡單得多。 – Abhinav 2011-03-10 15:27:21

+0

正是我在找的東西。非常感謝。我會詢問另一個線程中的交叉驗證。 – xain 2011-03-10 15:44:41

相關問題