2013-01-08 172 views
2

我搜索了這個地方,但找不到幫助我的答案:我有一個設置活動與PreferenceFragment一起使用。在其中一個設置上有一個EditTextPreference。它很好地保存了它的價值。但是,當我旋轉屏幕時,EditTextPreference消失,所做的更改將丟失。EditTextPreference和屏幕旋轉

這是因爲活動是新創建的。得到它了。

我知道我可以使用onSaveInstanceState來獲取輸入的數據,但是,我不清楚如何讓EditTextPreference再次出現(實際上我沒有添加任何編碼,它都是通過xml定義發生的)。非常感謝您的幫助。

回答

0
+0

嗨Dinesh,謝謝,我再讀一遍。它指出,當你必須避免由於配置更改而重新啓動時,這種技術應被視爲最後的手段,並且不推薦用於大多數應用程序。我不認爲我想實現的是異乎尋常的,因爲所有其他應用程序在同樣的方式。我想我需要使用'onSaveInstanceState()',但這是'EditTextPreference'的受保護方法。 – Skye

0

我有完全相同的問題。經過一些試驗和錯誤之後,我發現了一些適用於我的東西:

我剛剛將android:configChanges="orientation|screenSize"添加到清單中的首選項活動。 EditText不會在方向更改中消失,其內容(文本)仍保留。